1. 程式人生 > >關鍵字:linux,Kill,多個程序kill

關鍵字:linux,Kill,多個程序kill

1、linux Kill多個程序的案例:
幹掉nginx所有程序

經常需要Kill多個程序,如果這些程序有共同的特點,就可以用一條命令Kill掉它們。比如清除Nginx所有程序:

ps -aux|grep nginx|grep -v grep|cut -c 9-15|xargs kill -9

管道符“|”用來隔開兩個命令,管道符左邊命令的輸出會作為管道符右邊命令的輸入

下面說說用管道符聯接起來的幾個命令:
“ps -aux”是linux裡檢視所有程序的命令。這時檢索出的程序將作為下一條命令“grep nginx”的輸入。
“grep nginx”的輸出結果是,所有含有關鍵字“nginx”的程序,這是Nginx程序的共同特點。
“grep -v grep”是在列出的程序中去除含有關鍵字“grep”的程序。
“cut -c 9-15”是擷取輸入行的第9個字元到第15個字元,而這正好是程序號PID。
“xargs kill -9”中的xargs命令是用來把前面命令的輸出結果(PID)作為“kill -9”命令的引數,並執行該命令。
kill -9”會強行殺掉指定程序,這樣就成功清除了nginx的所有遠端連線程序。其它類似的任務,只需要修改“grep nginx”中的關鍵字部分就可以了。

2、多個程序如果是相同的程序名可以使用pkill命令
“pkill”命令允許使用擴充套件的正則表示式和其它匹配方式。你現在可以使用應用的程序名kill掉它們,而不是使用PID。例如,要kill掉nginx,只需要執行命令:

pkill  nginx

3、多個程序如果是相同的程序名可以使用Killall命令
killall同樣使用程序名替代PID,並且它會kill掉所有的同名程序。例如,如果你正在執行多個nginx的例項,可以用命令把它們全部kill掉:

killall  nginx