歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> Linux技術

Linux中通過 kill命令 殺死指定進程

一  殺死指定進程

現知道有一個curl線程正在運行,需要殺死
anggang@barry$ curl -y 30 -Y 1 -m 300 -x 8.8.8.8:808 -o html_baidu http://www.baidu.com
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:--  0:00:21 --:--:--     0

ps -ef 查詢運行進程
yanggang@barry$ ps -ef | grep curl
yanggang 10992 25473  0 14:11 pts/0    00:00:00 curl -y 30 -Y 1 -m 300 -x 8.8.8.8:808 -o html_baidu http://www.baidu.com
yanggang 18591 11235  0 14:11 pts/1    00:00:00 grep --color=auto curl
ps -ef 查詢並過濾進程id:
yanggang@barry$ ps -ef | grep curl
yanggang  9201 25473  0 14:13 pts/0    00:00:00 curl -y 30 -Y 1 -m 300 -x 8.8.8.8:808 -o html_baidu http://www.baidu.com
yanggang 13612 11235  0 14:13 pts/1    00:00:00 grep --color=auto curl
yanggang@barry$ ps -ef | grep curl | grep -v grep | cut -c 15-20
 25473
ps -ef 查詢並過濾進程id,並殺死該進程:
yanggang@barry$ ps -ef | grep curl
yanggang 13390 28367  0 14:15 pts/3    00:00:00 curl -y 30 -Y 1 -m 300 -x 8.8.8.8:808 -o html_baidu http://www.baidu.com  (殺死進程前)
yanggang 16946 11235  0 14:15 pts/1    00:00:00 grep --color=auto curl
yanggang@barry$ ps -ef | grep curl | grep -v grep | cut -c 15-20
 28367
yanggang@barry$ ps -ef | grep curl | grep -v grep | cut -c 15-20 | xargs kill -9
yanggang@barry$ ps -ef | grep curl
yanggang 13072 11235  0 14:16 pts/1    00:00:00 grep --color=auto curl  (殺死進程後,無此進程)

或者:
kill   -9   `ps   -ef|grep   “processname” | grep -v "grep"|awk   '{print   $2} '`

二 殺死批量進程

for pid in $(ps -ef | grep curl | grep -v grep | cut -c 15-20); do    (獲取進程id數組,並循環殺死所有進程)
    echo $pid
    kill -9 $pid
done

貼出源碼:

# !/bin/sh

for pid in $(ps -ef | grep curl | grep -v grep | cut -c 15-20); do
    echo $pid
    kill -9 $pid
done



#while [ ! -z $(ps -ef | grep curl | grep -v grep | cut -c 9-15) ]
#do
#    ps -ef | grep curl | grep -v grep | cut -c 15-20 | xargs kill -9
#    ps -ef | grep curl | grep -v grep | cut -c 9-15 | xargs kill -9
#done
Copyright © Linux教程網 All Rights Reserved