killall和killall命令到底是做什么的?我意识到他们终止了一个应用程序或进程,但是他们中的任何一个都做得很干净/安全,就像UI中的“退出”一样吗?还是说他们更像是“武力退出”?
谢谢!
(macOS 10.13.4塞拉高)
发布于 2018-04-19 15:40:52
kill命令是向进程发送信号的UNIX命令(macOS是UNIX变体)。有许多不同的信号可以发送到进程。信号有定义的名称和数字代码。
如果不指定信号,则将使用默认值,即TERM (15)信号。TERM信号的规范旨在给寻址过程一个优雅关闭的机会,即在终止之前进行一些清理。
示例(所有都是等价的):
kill <pid>
kill -15 <pid>
kill -TERM <pid>
kill -s TERM <pid>一个更强的信号是KILL (9)信号,它强制进程立即终止。
示例:
kill -9 <pid>
kill -KILL <pid>
kill -s KILL <pid>有关更多信息和完整的信号列表,请运行man kill。
使用kill,您必须通过它的进程ID来指定目标进程,killall命令的作用本质上是相同的,主要的区别是它允许您根据它们的名称指定目标进程。详情请参见man killall。
https://stackoverflow.com/questions/49924168
复制相似问题