当前位置:   article > 正文

Linux进程管理(含上机实例)_at 命令可以只指定时间,也可以时间和日期一起指定

at 命令可以只指定时间,也可以时间和日期一起指定

进程管理

知识点

​ 为了协调多个进程对各种计算机共享资源的访问,操作系统要跟踪所有进程的活动,以及它们对系统资源的使用情况,从而实施对进程和资源的动态管理。

进程概述

  • 进程是储存在磁盘上包含可执行机器指令和数据的静态实体
  • 进程是在操作系统中执行的特定任务的动态实体
  • 一个程序允许有多个进程
  • 每个运行中的程序至少由一个进程组成
  • linux每个进程与其他进程都是彼此独立的,都有自己独立的权限与职责

进程的状态

  • 运行状态
  • 就绪状态
  • 封锁态(阻塞态)
    在这里插入图片描述

linux的三种进程

1.交互进程

2.批处理进程

3.守护进程*

  • 守护进程是指在后台运行而又没有终端或登录shell与之结合在一起的进程
  • 守护进程经常在程序启动时开始运行,在系统结束时停止。这些进程没有控制终端,所以称为在后台运行。

启动进程

1.at命令(定时执行)

直接输入 at +时间 进入子模式,如:规定在2:00重启设备

时间输入格式:时:分 日.月.年
在这里插入图片描述

注: 编辑完成at命令的指令序列后,必须回车换行确认,最后输入“CTRL+d”组合键结束当前输入

#at命令可以只指定时间,也可以时间和日期一起指定
at [-V] [-q queue] [-f file] [-mldv] time
#-f 是吧已经编辑好的指令放到子模式里,再直接运行该文本文件(无需进入子模式)
  • 1
  • 2
  • 3
#查看作业
at -c job1 [job2 job3 ...]
#显示待执行作业
atq 
#查看队列(查看a队列)
atq -q a
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
#删除队列中的作业
artm [-V] job1 [job2 job3...]
  • 1
  • 2

atq:

在这里插入图片描述

2.batch命令(空闲时执行)

语法格式和at相似,在此不一一列举

#batch命令也可以指定时间,意为在该时间起的空闲时间执行任务
batch  [-V]  [-q queue]  [-f file]  [-mv]  [time]
  • 1
  • 2
3.cron命令(周期性实行)
crontab [-u user] {-l|-r|-e}
-l #列出用户目前的crontab
-e #编辑用户目前的crontab
-r #清空用户目前的crontab
  • 1
  • 2
  • 3
  • 4

格式说明:
在这里插入图片描述

注:

  1. 星号(*):代表所搜可能的值
  2. 逗号:可以用逗号隔开的值指定一个列表范围
  3. 中杠 ( - ):可以用整数之间的中杠表示一个整数范围,如2-6

管理进程

1.ps命令 ( 查看进程状态 )
ps [option]
-aux #显示所有终端上所有用户有关进程的所有信息
-efx #显示系统中所有进程的全面信息
  • 1
  • 2
  • 3

$ps aux 输出结果中的STAT列的可能标志

标志意义说明
S睡眠通常是在等待某个事件的发生,如一个信号或有输入可用
R运行严格来说,应是“可运行”,即在运行队列中,处于正在执行或即将运行状态
D不可中断的睡眠(等待)通常是在等待输入或输出完成
T(terminate)停止通常是被shell作业控制所停止,或者进程正处于调试器的控制之下
Z(zombie)僵尸进程通常是该进程已经死亡,但父进程没有调用wait类函数来释放该进程的资源
N(nice)低优先级任务
s进程是会话期首进程
+进程属于前台进程组
l进程是多线程的
<高优先级任务
2. top命令(动态显示进程状态)

搬运:top命令详解

top  [bciqsS] [d <时间间隔>] [n <times>]
#在按q退出之前,top程序会一直进行下去
  • 1
  • 2
3.kill命令(终止进程)

​ 通常终止一个前台进程可以使用[Ctrl+C]组合键。但是,对于一个后台进程就须用kill命令来终止。

kill [-s信号|-p] 进程号
kill -l [信号]
killall -HUP cmd #结束某命令的所有进程
  • 1
  • 2
  • 3
4.作业控制
命令作用
&让作业直接在后台运行
ctrl+z将前台作业挂起
jobs显示当前所有作业
bg[作业号]将挂起的作业切换到后台
fg[作业号]将后台作业切换到前台

上机任务:进程管理

任务一、任务调度

1、使用at命令完成如下操作:

a、19:00执行reboot任务;

at 19:00
>reboot
>[ctrl+d]
  • 1
  • 2
  • 3

b、2020年12月2日19:00执行备份操作,将/var/www文件夹打包到/root目录下,命名为www.bak.tar;

at 19:00 2.12.20
at >tar cvf /root/www.bak.tar /var/www
  • 1
  • 2

c、查看当前已有的at计划任务列表;

atq
  • 1

d、查看当前已有的at计划详细内容;

#查看序列为4的计划
at -c 4
  • 1
  • 2

e、删除at计划的列表。

atrm 4 5
  • 1

在这里插入图片描述

2、使用crond完成如下操作:

a、添加root用户的计划任务,在每年3、6、9、12月的1号上午6点完成备份操作,将/var/www文件夹打包到/root目录下,命名为www.bak.tar;

crontab -u root -e
#进入vi编辑器
0 6 1 3,6,9,12 * tar cvf /root/www.bak.tar /var/www
  • 1
  • 2
  • 3

b、查看root用户的计划表;

crontab -u root -l
  • 1

c、查看/var/spool/cron目录内查看用户的计划表;

cat /var/spool/cron/root
  • 1

d、删除root用户计`划表。

crontab -u root -r
  • 1

任务二、进程管理

1、使用ps命令的“-ef”选项组合查看系统进程

#显示系统所有进程的全面信息
ps -ef
  • 1
  • 2

在这里插入图片描述

2、使用ps命令的“-aux”选项组合查看系统进程

#显示所有终端上所有用户有关进程的全面信息
ps -aux
  • 1
  • 2

在这里插入图片描述

3、在一个终端上使用“#ping 127.0.0.1”,在另一个终端上查看该进程并使用kill命令结束进程

  1. ctrl+alt+shift+f2 切换终端

  2. ping 127.0.0.1
    
    • 1
  3. alt+f7 切换终端

  4. #查看当前进程
    ps -aux
    
    • 1
    • 2
  5. 找到ping 127.0.0.1的进程号

在这里插入图片描述

  1. #终止进程
    kill 7017
    
    • 1
    • 2
  2. 再次查看系统当前进程,发现已经结束

4、使用top查看系统进程

top
#如果不退出(q),将会一直刷新状态
  • 1
  • 2

在这里插入图片描述

5、在后台运行vi

vim &
  • 1

在这里插入图片描述

6、查看后台任务

jobs
  • 1

在这里插入图片描述

7、将vi切换到前台

fg 1
#然后vi编辑器就跳出来了
  • 1
  • 2

8、将vi挂起

ctrl+z

9、将挂起的vi切换到后台运行

bg 1
  • 1
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/334813
推荐阅读
相关标签
  

闽ICP备14008679号