日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

9.4-6 kill killall pkill

發(fā)布時間:2024/9/3 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 9.4-6 kill killall pkill 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

kill:終止進程

能夠終止你希望停止的進程。

kill 命令的參數(shù)選項及說明

-l?? ?列出全部的信號名稱 -p?? ?指定kill命令只打印相關進程的進程號,而不發(fā)送任何信號 -s?? ?指定要發(fā)送的信號 [root@k8s-play ~]# kill -l   #<=參數(shù)l顯示系統(tǒng)的所有信號。 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1 11) SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SIGTERM 16) SIGSTKFLT 17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP 21) SIGTTIN 22) SIGTTOU 23) SIGURG 24) SIGXCPU 25) SIGXFSZ 26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGIO 30) SIGPWR 31) SIGSYS 34) SIGRTMIN 35) SIGRTMIN+1 36) SIGRTMIN+2 37) SIGRTMIN+3 38) SIGRTMIN+4 39) SIGRTMIN+5 40) SIGRTMIN+6 41) SIGRTMIN+7 42) SIGRTMIN+8 43) SIGRTMIN+9 44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13 48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12 53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9 56) SIGRTMAX-8 57) SIGRTMAX-7 58) SIGRTMAX-6 59) SIGRTMAX-5 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-2 63) SIGRTMAX-1 64) SIGRTMAX [root@k8s-play ~]# kill -l SIGKILL #<=可以使用-l參數(shù)對信號名和數(shù)字信號互換。 9 [root@k8s-play ~]# kill -l 9 KILL

常用信號

信號?? ??? ?說明 HUP(1)?? ?掛起,通常因終端掉線或用戶退出而引發(fā) INT(2)?? ?中斷,通常是按下Ctrl+c組合健來發(fā)出這個信號 QUIT(3)?? 退出,通常是按下Ctrl+\組合鍵來發(fā)出這個信號 KILL(9)?? 立即結束進程的運行 TERM(15)??終止,通常在系統(tǒng)關機時發(fā)送 TSTP(20)??暫停進程的運行,通常是按下Ctrl+z組合鍵來發(fā)出這個信號 更多細節(jié)請參考signal在線手冊的第七部分(man 7signal)。

終止進程

kill指令默認使用的信號為15,用于結束進程。如果進程忽略此信號,則可以使用信號9強制終止進程。 一般是先通過ps等命令獲取到要終止進程的進程號,然后直接使用“kill 進程號”就可以了。 kill 2203?? ?? ????#<==Kill命令默認使用的信號為15,這種格式也是最常用的。 kill -s 15 2203? ? #<==這種格式使用-s參數(shù)明確指定發(fā)送值為15的信號,效果和 kill 2203 一樣。 kill -15 2203??? ??#<==上面的-s 15可以簡寫為 -15 如果用上面的方法還是無法終止進程,那么我們就可以用KILL(9)信號強制終止進程。 kill -9 2203? ? #<==信號9會強行終止進程,這會帶未一些副作用、如教據(jù)丟失,或者終端無法恢復到正常扶態(tài)等,因此應盡量避免使用,除非進程使用其他信號無法終止。

擴展:特殊信號0的應用案例

在kill的所有信號中,有一個十分特殊的信號值0,使用格式為kill -0 $pid。其中的 -0 表示不發(fā)送任何信號給$pid對應的進程,但是仍然會對$pid是否存在對應的進程進行檢查,如果$pid對應的進程已存在,則返回0,若不存在則返回1。下面是系統(tǒng)參考腳本 /etc/init.d/mysqld。

killall:通過進程名終止進程

使用kill命令終止進程還需要先獲取進程的pid進程號,這個過程有點繁瑣,而使用killall命令就可以直接用“killall 進程名”這種形式終止進程。 killall [選項]? [進程名] -c?? ?對于很長的名字,要求能夠準確匹配。默認情況下,如果一個進程名的長度超過了15個字符,則無法使用整個名字(溢出了)。在這種情況下,killall會終止所有匹配名字前15個字符的所有進程。而-e參數(shù)的作用是忽略模糊匹配項目。如果同時指定了-v選項,則killall會針對每個忽略的記錄打印一條消息 -I? ??不區(qū)分大小寫匹配 -g?? ?終止屬于該進程組的進程 -i?? ?在終止進程之前詢問是否確認 -l?? ?列出所有已知的信號名 -q?? ?如果沒有進程終止則不提示 -r?? ?使用正則表達式匹配要終止的進程名稱 -s?? ?用指定的信號代替默認信號 -u?? ?終止指定用戶的進程 -v?? ?報告信號是否發(fā)送成功 -w?? ?等待所有被終止的進程死去。killall每秒都會檢查一次被終止的進程是否仍然存在,其僅在都死光后才返回。注意,如果信號被忽略,或者沒有起作用,或者進程停留在僵尸狀態(tài),那么killall可能會永久等待 [root@cs6 ~]# killall crond [root@cs6 ~]# killall crond crond: 沒有進程被殺死 [root@cs6 ~]# /etc/init.d/crond start 正在啟動 crond: [確定] [root@cs6 ~]# killall -w crond [root@cs6 ~]# killall -w crond crond: 沒有進程被殺死

終止指定用戶的所有進程

killall -u www nginx? #<=這種方式可以終正所有歸屬于www用戶的nginx進程

pkill:通過進程名終止進程

pkil命令可通過進程名終止指定的進程。使用killal終止進程需要連續(xù)執(zhí)行幾次,而pkill 可以殺死指定進程及其所有子進程。 pkill [選項] [進程名] -t 終端?? ?殺死指定終端的進程 -u 用戶?? ?殺死指定用戶的進程

通過進程名終止進程

[root@cs6 ~]# service crond status crond (pid 4641) 正在運行... [root@cs6 ~]# pkill crond [root@cs6 ~]# service crond status crond 已死,但是 subsys 被鎖

通過終端名終止進程

[root@cs6 ~]# w 07:20:39 up 1 day, 22:40, 1 user, load average: 0.00, 0.00, 0.00 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root pts/4 10.0.0.1 00:59 0.00s 0.53s 0.00s w [root@cs6 ~]# pkill -t tty4

通過用戶名終止進程

[root@cs6 ~]# w 07:22:39 up 1 day, 22:42, 2 users, load average: 0.00, 0.00, 0.00 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root pts/0 10.0.0.1 07:21 1:34 0.07s 0.07s -bash root pts/4 10.0.0.1 00:59 0.00s 0.54s 0.00s w [root@cs6 ~]# pkill -u root Connection closing...Socket close.Connection closed by foreign host.Disconnected from remote host(cs6-minimal) at 15:24:31.#<=使用 -u 選項殺死指定用戶的所有進程,最好還是同時再指定進程名去殺,以免誤殺服務。

總結

以上是生活随笔為你收集整理的9.4-6 kill killall pkill的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。