kill命令
不仅仅可以杀死某个进程,还可以向进程发送信号(实际上杀死进程也是向这个进程发送信号)。
格式:kill [选项] [进程Id列表]
Kill-l:显示kill命令所能发送的信号种类以及对用的代码:
编号 | 名字 | 含义 |
1 | SIGHUP | 挂起 |
2 | SIGINT | 中断(对前台进程中断) |
9 | SIGKILL | 终止(不可捕捉和忽略,强行杀死) |
15 | SIGTERM | 从Kill发送软中断信号(如果Kill后不加选项,默认发送的信号) |
如果要杀死一个进程,建议使用:
KillPid (或者kill -15 pid)而不是kill -9 Pid,虽然后者似乎更有效,但是被杀死的进程可能未能正常关闭它正在使用的文件,而造成异常,所以最好先使用前者,如果未能杀死,再考虑使用后者。
top命令
实时监控进程状况
默认情况下,每5秒自动刷新一次,用命令:
Top-d n,可以使屏幕每n秒刷新一次
jobs命令
查看当前shell下正在运行的作业。
作业和进程是两个不同的概念,一个作业可以包涵一个或几个进程。例如:
Ps -ef |grep jjpp &
可以看作一个作业,拥有一个作业Id(这个作业Id一般是该作业所包涵的所有进程的Pid列表里面的第一个),以上作业包括进程ps,grep还有一个shell进程,当输入jobs命令可以查看当前shell下运行的作业。
sleep命令
使当前正在执行的进程在规定时间内处于睡眠的状态。
格式:sleep n,n的单位一般为秒而不是毫秒
linux中的进程
一般可以把进程的状态划分为5个,上图是进程状态的切换图。
进程的启动方式:1手工启动,2调度启动
进程可以分为前台进程和后台进程。
前台进程:用户运行一个程序或者执行一个命令,进程不结束,终端就不出现终端提示符。
例如:grep -R "Error" /
后台进程:用户在命令行后加上&字符,立即显示提示符,让该命令在后台运行。
例如:sleep 30 &
可以用jobs命令或者ps命令查看该后台作业或进程。
精灵(daemon)进程(守护进程):与终端和用户无关,负责侦听用户请求或者定期制动,平时处于睡眠状态。
僵尸进程:进程已经终止,但是分配给进程的资源还没有被回收或者是在进程列表上占了一个空位,会影响系统效率。