UNIX系统中的进程处理与信号控制
1. 进程终止与kill命令
在UNIX系统中,当需要终止进程时,我们通常会使用kill命令。例如,当alice脚本返回退出状态码131,且QUIT信号无法终止它时,我们可以使用KILL信号作为最后的手段:
$ kill -KILL %1执行上述命令后,会输出如下信息:
[1]+ Killed alice需要注意的是,进程无法捕获KILL信号,操作系统会立即无条件终止该进程。如果进程未被终止,可能是进程处于某些特殊状态,或者UNIX系统版本存在漏洞。
另外,我们可以使用jobs -p来终止所有后台作业,示例代码如下:
kill "$@" $(jobs -p)在使用kill命令时,不建议直接使用KILL信号,而应先尝试TERM(默认信号)和QUIT信号。因为TERM和QUIT信号会给进程一个“