一.程序和进程的关系
1.程序
·保存在硬盘,光盘等介质中的可执行代码和数据
·静态保存的代码
2.进程
·在CPU及内存中运行的程序代码
·动态执行的代码
·父,子进程
①.每个程序可以创建一个或多个进程
二.查看进程信息ps
1.ps命令
·查看静态的进程统计信息
#ps aux和#ps -elf都可以查看
ps命令是Linux系统中最为常用的进程查看工具,主要用于显示包含挡圈运行的各个进程完整信息的静态快照。
其中a:显示当前终端下所有进程信息,包含其他用户进程。与"x"选项结合时显示系统中所有进程信息
u:使用以用户为主的格式输出进程信息
x:显示当前用户在所有终端下的进程信息
-e:显示系统内的所有进程信息
-l;使用长格式显示进程信息
-f:使用完整的格式显示进程信息
查看动态的进程排名信息
#top
三.查看进程信息pgrep
1.pgrep命令
·根据特定条件查询进程PID信息
#pgrep -l “log”
#pgrep -l -U teacher -t tty1
2.pstree命令
·以树形结构列出进程信息
#pstree -aup
#pstree -ap teacher
四.进程的启动方式
1.手工启动
·前台启动:用户输入命令,直接执行程序
·后台启动:在命令行尾加入"&"符号
#cp /dev/cdrom mycd.iso &
[1] 28454→输出信息中包括后台任务序号,PID号
五.进程的前后台调度
1.Ctrl+z组合键
·将当前进程挂起,即调入后台并停止执行
2.jobs命令
·查看处于后台的任务列表
3.fg命令
·将后台进程恢复到前台运行,可指定任务序号
#jobs
#fg 1
六.终止进程的运行
1.Ctrl+c组合键
·中断正在执行的命令
2.kill,killall命令
·kill用于终止指定PID号的进程
·killall用于终止指定名称的所有进程
·-9选项用于强制终止
3.pkill命令
·根据特定条件终止相应的进程
·常用命令选项
①.-U:根据进程所属的用户名终止相应进程
②.-t:根据进程所在的终端终止相应进程
#pgrep -l -U “tom” //查看tom运行的进程
#pkill -9 -U “tom” //强制终止tom运行的进程
#pgrep -l -U “tom” //在查看tom运行的进程
七.计划任务管理at
1.at命令
·一次性计划任务
at [HH:MM] [yyy-mm-dd]
#date
#at 10:35 2017-05-07
at>pgrep -U root | wc -l> /tmp/ps.root
#cat /tmp/ps.root
2.案例
八.计划任务管理crontab
1.crontab命令
·按照预先设置的时间周期(分钟,小时,天…)重复执行用户指定的命令操作
·属于周期性计划任务
·主要设置文件
①.全局配置文件,位于文件:/etc/crontab
②.系统默认的设置,位于目录:/etc/cron.*/
③.用户定义的设置,位于文件:/var/spool/cron/用户名
2.管理crontab计划任务
·编辑计划任务
crontab -e [-u 用户名]
·查看计划任务
crontab -l [-u 用户名]
·删除计划任务
crontab -r [-u 用户名]
九.crontab任务配置的格式
字段 | 说明 |
---|---|
分钟 | 取值为从0到59之间的任意整数 |
小时 | 取值为从0到23之间的任意整数 |
日期 | 取值为从1到31之间的任意整数 |
月份 | 取值为从1到12之间的任意整数 |
星期 | 取值为从0到7之间的任意整数,0或7代表星期日 |
命令 | 要执行的命令或程序脚本 |
1.时间数值的特殊表示方法
·*表示该范围内的任意时间
·,表示间隔的多个不连续时间点
·-表示一个连续的时间范围
·/指定间隔的时间频率
2.应用示例
·0 17 * * 1-5 周一到周五每天17:00
·30 8 * * 1,3,5 每周一,三,五的8点30
·0 8-18/2 * * * 8点到18点之间每2小时
·0 * */3 * * 每3天