kill和killall命令究竟是做什么的?我知道它们可以终止一个应用程序或进程,但它们是否能像UI中的“退出”一样干净/安全地终止呢?还是更像“强制退出”?
谢谢!
(macOS 10.13.4 High Sierra)
kill和killall命令究竟是做什么的?我知道它们可以终止一个应用程序或进程,但它们是否能像UI中的“退出”一样干净/安全地终止呢?还是更像“强制退出”?
谢谢!
(macOS 10.13.4 High Sierra)
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
。
pgrep
和pkill
。 - undefinedkillall -KILL GarageBand
- undefined