内容结构:查看进程
控制进程
at 一次性任务设置
crontab 周期性任务设置
(一)查看进程
程序和进程的关系
程序保存在硬盘,光盘等介质中的可执行代码和数据
静态保存的代码
进程在cpu及内存中运行的程序代码
动态执行的代码
父,子进程
每个进程可以创建一个或多个进程
线程一个进程中包含多个线程
进程是线程的集合
查看静态的进程统计信息—ps命令[root@localhost ~]# ps aux 简单形式显示进程信息a:查看系统当前所有进程
u:指定用户
x:该用户在所有终端(tty)下的进程 ps/0远程终端
PID:进程号,VSZ:虚拟内存,RSS:物理内存,TTY:终端(?未知),%CPU:cpu占用率,%MEM:占用内存率,START:运行开始时间,TIME:进程占用cpu的总时间,COMMAND:进程名
STAT:当前进程的状态S 可中断休眠进程
D 不可中断休眠进程
s 父进程
< 优先级高的进程
R 正在运行的进程
l 多线性进程
N 优先级低
Z 僵尸进程
+ 前台进程[root@localhost ~]# ps -elf 长格式显示系统中进程的信息e:全部
f:完整的形式
l:长格式
PPID:当前进程的父进程
PRI:用户态优先级
NI:内核态 -20到19 越低优先级越高
ADDR:-正在运行
SZ:占用swap分区容量
WCHAN:当前进程在内核中的名称
查看动态的进程排名信息—top(每隔三秒刷新一次)[root@localhost ~]# top
系统任务(Tasks)信息:total,总进程数;running,正在运行的进程数;sleeping,休眠的进程数;stopped,中止的进程数;zombie,僵死无响应的进程数。
CPU 占用信息:us,用户占用;sy,内核占用;ni,优先级调度占用;id,空闲 CPU;wa,I/O 等待占用;hi,硬件中断占用;si,软件中断占用;st,虚拟化占用。要了解空闲的 CPU 百分比,主要看%id 部分。
内存占用(Mem)信息:total,总内存空间;free,空闲内存;used,已用内存;buff/cache,物理内存和交换内存的缓冲区总和。
交换空间(Swap)占用:total,总交换空间;free,空闲交换空间;used,已用交换空间;avail Mem,可用物理空间。
根据特定条件查询进程PID信息—pgrep命令[root@localhost /]# pgrep -l "log" 查看当前用户的log相关的进程详细信息
[root@localhost /]# pgrep -l -U test1 "bash" 查看指定用户进程的详细信息
以树形结构列出进程信息—pstree命令[root@localhost /]# pstree -aup 查看当前用户的树形进程
a:显示完整信息
u:列出对应用户名
p:列出对应PID号
[root@localhost /]# pstree -ap test1 查看指定test1用户的树形进程
(二)控制进程
手工启动前台启动:用户输入命令,直接执行程序
后台启动:在命令行尾加入“&”符号
进程的前后台调度
Ctrl+z组合键将当前进程挂起,及调入后台并停止执行
jobs命令查看处于后台的任务管理(-l显示详细信息)
fg命令将后台进程恢复到前台运行,可指定任务序号
bg命令将进程恢复运行并在后台运行
Ctrl+c组合键中断正在执行的命令
kill,killall命令kill用于终止指定PID号的进程
killall用于终止指定名称的所有进程
-9选项用于强制终止
pkill命令
根据特定条件终止相应的进程
常用选项
-U:根据进程所属用户名终止相应进程
-t:根据进程所在的终端终止相应进程
(三)at 一次性计划任务设置
at命令at [HH:MM] [yyyy-mm-dd] 小时:分钟 年-月-日
atq 查看当前系统计划任务
atrm 删除计划任务
Ctrl+d 提交任务
(四)crontab 周期性计划任务设置
crontab命令安装预先设置的时间周期(分,时,日,月,周)重复执行用户指定的命令操作
属于周期性计划任务
主要设置文件
全局配置文件/etc/crontab
系统默认的设置/etc/cron.*/
用户定义的设置/var/spool/cron/用户名
管理cron计划任务
编辑计划任务crontab -e [-u 用户名]
查看计划任务crontab -l [-u 用户名]
删除计划任务crontab -r [-u 用户名]
谢谢阅读!!!