进程和计划任务管理

一。查看和控制进程

1.ps命令——查看静态的进程统计信息(Processes Statistic)

注释:

PID:进程IDTTY

TTY:表明该进程在哪个终端上运行。“?”表示未知或不需要终端。

TIME:该进程占用的 CPU 时间

CMD:启动该进程的命令的名称

2.ps aux(BSD风格)

  • a:显示当前终端下的所有进程信息,包括其他用户的进程。与“x”选项结合时将显示系统中所有的进程信息。
  • u:使用以用户为主的格式输出进程信息。
  • x:显示当前用户在所有终端下的进程信息。

注释:

  • USER:启动该进程的用户账号的名称。
  • PID:该进程在系统中的数字 ID 号,在当前系统中是唯一的。
  • %CPU:CPU 占用的百分比。
  • %MEM:内存占用的百分比。
  • VSZ:占用虚拟内存(swap 空间)的大小。
  • RSS:占用常驻内存(物理内存)的大小。
  • TTY:表明该进程在哪个终端上运行。“?”表示未知或不需要终端。
  • STAT:显示进程当前的状态,如 S(休眠)、R(运行)、Z(僵死)、<(高优先级)、N(低优先级)、s(父进程)、+(前台进程)。对处于僵死状态的进程应该予以手动终止。 D:不可以唤醒的 T:停止的。
  • START:启动该进程的时间。
  • TIME:该进程占用的 CPU 时间。
  • COMMAND:启动该进程的命令的名称。

(3)ps -elf(Unix风格)

  • -e:显示系统内的所有进程信息。
  • -l:使用长(Long)格式显示进程信息。
  • -f:使用完整的(Full)格式显示进程信息。

3:top 命令——查看进程动态信息

注释:

第一行:top - 06:18:40 up 3:15, 1 user, load average: 0.06, 0.02, 0.00

含义分别是:系统时间、运行时间、登录终端数、系统负载(三个数值分别为 1 分钟、5 分钟、15 分钟内的平均值,数值越小意味着负载越低)

第二行:Tasks: 365 total, 1 running, 364 sleeping, 0 stopped, 0 zombie

含义分别是:进程总数、运行中的进程数、睡眠中的进程数、停止的进程数、僵尸的进程数

第三行:%Cpu(s): 0.4 us, 0.5 sy, 0.0 ni, 98.8 id, 0.0 wa, 0.3 hi, 0.0 si, 0.0 st

含义分别是:用户占用资源百分比、系统内核占用资源百分比、改变过优先级的进程资源百分比、空闲的资源百分比、等待输入输出的cpu时间百分比、硬中断占用的cpu百分比、软中断占用的cpu百分比和用于虚拟cpu的情况。

第四行:MiB Mem:7790.6 total, 4309.7 free,2571.4 used, 909.5buff/cache

buff:缓冲区,是对物理设备上的数据的缓存/缓冲

cache:缓存区,是文件数据的缓存/缓冲

含义分别是:物理内存总量、内存空闲量、内存使用量、为内核缓存的内存量。

第五行:KiB Swap:  4194300 total,  4194300 free,   0 used.  3286708 avail Mem

含义分别是:虚拟内存总量、虚拟内存空闲量、虚拟内存使用量、可以分配和使用的内存量

第六行:PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

从第六行开始,就是具体的系统进程的资源使用的详细情况,依次分别表示:进程ID、进程所有者的用户名、优先级、nice值(负值表示优先级,正值表示低优先级)、进程使用的虚拟内存总量(KB)、进程使用的未被换出的物理内存大小(KB)、共享内存大小(KB)、进程状态、进程上次更新到现在的CPU时间占用百分比、物理内存占比、进程使用的CPU时间总计(单位1/100秒)、命令名。默认各进程是按照CPU的占用量来排序的。

4:pgrep 命令——查询进程信息

5:pstree 命令——查看进程树

启动:

1.启动进程
在 Linux 操作系统中,可以由用户手工启动或者按预订计划调度启动新的进程。
(1)手工启动进程
由用户手工输入命令或者可执行程序的路径,可以至少启动一个进程。根据该进程是否需要占用当前的命令终端,手工启动又可以分为前台启动和后台启动。
进程在前台运行(如执行“Is-"命令)时,用户必须等到该进程执行结束并退出以后才能继续输入其他命令,大多数命令操作在前台启动运行。进程在后台运行时,用户可以继续在当前终端中输入其他命令,而无须等待该进程结束,适用于运行耗时较长的操作。
启动后台进程需要使用“&”操作符,将“&"操作符放在要执行命令的最后面,进程启动后会直接放入后台运行,而不占用前台的命令操作界面,方便用户进行其他操作。例如,当使用 cp 命令从光盘中制作镜像文件时,由于需要复制的数据较多,耗时较长,因此可结合“&符号将复制操作放到后台运行,以便用户可以继续执行其他命令操作。

2:改变进程的运行方式

(1)挂起当前的进程

[root@localhost ~]# cp /opt/CentOS-7-x86_64-DVD-2009.iso /

按 Ctrl+Z 组合键挂起当前进程

(2)查看后台的进程

[root@localhost ~]# jobs -l

[1]+  9109 停止                  cp -i /opt/CentOS-7-x86_64-DVD-2009.iso /

(3)将挂起的后台进程恢复到后台运行

[root@localhost ~]# bg 1

[1]+ cp -i /opt/CentOS-7-x86_64-DVD-2009.iso / &

(4)将挂起的后台进程恢复到前台运行

[root@localhost ~]# cp /opt/CentOS-7-x86_64-DVD-2009.iso /

按 Ctrl+Z 组合键挂起当前进程

[1]+  已停止               cp -i /opt/CentOS-7-x86_64-DVD-2009.iso /

[root@localhost ~]# fg 1

cp -i /opt/CentOS-7-x86_64-DVD-2009.iso /

3:终止进程执行

(1)使用 kill 命令终止进程

[root@localhost ~]# yum -y install vsftpd

[root@localhost ~]# systemctl start vsftpd

[root@localhost ~]# pgrep -l vsftpd

9188 vsftpd

[root@localhost ~]# kill 9188

(2)kill命令强制杀死进程

[root@localhost ~]# vim aa

按 Ctrl+Z 组合键挂起当前进程

[1]+  已停止               vim aa

[root@localhost ~]# jobs -l

[1]+  9192 停止                  vim aa

[root@localhost ~]# kill 9192

[root@localhost ~]# jobs -l

[1]+  9192 停止                  vim aa

[root@localhost ~]# kill -9 9192

[root@localhost ~]# jobs -l

[1]+  9192 已杀死               vim aa

5:使用 pkill 命令终止进程

使用 pkill 命令可以根据进程的名称、运行该进程的用户、进程所在的终端等多种属性终止特定的进程

新建一个用户张三,并用张三在另一个终端登录

[root@localhost ~]# pgrep -l -U zhangsan

19584 bash

[root@localhost ~]# pkill -9 -U zhangsan

[root@localhost ~]# pgrep -l -U zhangsan

二:计划任务管理

1:at 一次性任务设置

1:安装at工具

[root@localhost ~]# yum -y install at

[root@localhost ~]# systemctl start atd

2:设置一次性计划

[root@localhost ~]# date

2022年 06月 22日 星期三 21:32:36 CST

[root@localhost ~]# at 21:34

at> echo bbb>test

at> <EOT>

job 2 at Wed Jun 22 21:34:00 2022

[root@localhost ~]# at 21:38 

at> shutdown -h now

at> <EOT>

3:查询

[root@localhost ~]# atq

3:删除指定的计划

[root@localhost ~]# atrm 2

2:crontab 周期性任务设置

1:crontab 的配置文件和目录

(1)/etc/crontab——系统任务配置文件

[root@localhost ~]# cd /etc/cron.hourly/

[root@localhost cron.hourly]# vim aa.sh

echo abc>>/root/test.txt

[root@localhost cron.hourly]# chmod +x aa.sh

[root@localhost ~]# vim /etc/crontab

*/1 * * * * root run-parts /etc/cron.hourly

注:表示每间隔一分钟,开始执行/etc/cron.hourly目录下的可执行程序或脚本

[root@localhost ~]# systemctl restart crond

备注:

以天为单位的计划脚本,放置在/etc/cron.daily

以周为单位的计划脚本,放置在/etc/cron.weekly

以月为单位的计划脚本,放置在/etc/cron.monthly

(2)/var/spool/cron/——用户 cron 任务的配置文件存放目录

[root@localhost ~]# cd /var/spool/cron/

[root@localhost cron]# ls

[root@localhost cron]# crontab -e -u zhangsan

no crontab for zhangsan - using an empty one

crontab: installing new crontab

[root@localhost cron]# systemctl restart crond

[root@localhost cron]# ls

zhangsan

2:使用 crontab 命令管理用户的计划任务

  • -e:编辑计划任务列表。
  • -u:指定所管理的计划任务属于哪个用户,默认是针对当前用户(自己),一般只有 root 用户有权限使用此选项(用于编辑、删除其他用户的计划任务)。
  • -l:列表显示计划任务。
  • -r:删除计划任务列表。

[jerry @localhost ~]# crontab -e

[root@localhost ~]# crontab –l

[root@localhost ~]# crontab -l -u jerry

[jerry@localhost ~]$ crontab -r

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值