1. 程式人生 > >根據程序名稱殺死程序

根據程序名稱殺死程序

ps -ef | grep keyword | grep -v grep | awk '{print $2}' | xargs kill -9

逐個分析:

 

1, ps -ef | grep keyword: 查出程序名含有 keyword 的所有程序;

2, grep -v grep: 從這些結果裡面,把含有 grep 的關鍵詞的程序去除掉, -v 就是去除的意思;

3, awk 'print $2': 就是將結果的第二列的資訊打印出來;

4, xargs kill -9: xargs是將它前面命令的結果作為引數,傳遞給xargs後面的命令。

我們來看看前面的命令的第二列會輸出什麼資訊。

ps -ef | grep php-fpm | grep -v grep
root      1625     1  0 10月11 ?      00:00:16 php-fpm: master process (/etc/php/5.6/fpm/php-fpm.conf)
www-data  2096  1625  0 10月11 ?      00:00:00 php-fpm: pool www
www-data  2098  1625  0 10月11 ?      00:00:00 php-fpm: pool www

從左到右的欄位分別是
UID       PID       PPID      C     STIME    TTY       TIME         CMD

UID      :程式被該 UID 所擁有

PID      :就是這個程式的 ID 

PPID    :則是其上級父程式的ID

C          :CPU使用的資源百分比

STIME :系統啟動時間

TTY     :登入者的終端機位置

TIME   :使用掉的CPU時間。

CMD   :所下達的是什麼指令

 

第二列就是PID,程序ID。

 

kill -9就是強制殺死,後面的引數就是PID。

 

這就是一個根據程序名稱殺死程序的Linux命令。