最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Linux下使用killall命令終止進(jìn)程的8大用法實(shí)例詳解

 更新時間:2019年04月26日 10:30:44   作者:Magesh Maruthamuthu  
Linux 的命令行提供很多命令來殺死進(jìn)程。這篇文章主要介紹了Linux下使用killall命令終止進(jìn)程的8大用法,需要的朋友可以參考下

Linux 的命令行提供很多命令來殺死進(jìn)程。比如,你可以向 kill 命傳遞一個PID來殺死進(jìn)程;pkill 命令使用一個正則表達(dá)式作為輸入,所以和該模式匹配的進(jìn)程都被殺死。

但是還有一個命令叫 killall ,默認(rèn)情況下,它精確地匹配參數(shù)名,然后殺死匹配進(jìn)程。在這篇文章中,我們將討論有關(guān)這個命令的實(shí)際應(yīng)用。

默認(rèn)情況下,killall 命令將向一個/組進(jìn)程發(fā)送一個 SIGTERM 信號,但是,也可以通過參數(shù)發(fā)送一個指定的信號。

下面我們通過例子詳細(xì)介紹 killall 的 8 大用法。

1、基本用法

假如我們 3 個進(jìn)程在運(yùn)行,分別是 hello1, hello2, hello3 ,現(xiàn)在我們想殺死 hello1 進(jìn)程,可以直接使用如下方式:

killall hello1

運(yùn)行的結(jié)果如下:

[alvin@VM_0_16_centos test]$ ps aux | grep hello 
alvin  12061 0.0 0.0  4152  344 pts/0  S  14:41  0:00 ./hello1 
alvin  12074 0.0 0.0  4152  344 pts/0  S  14:41  0:00 ./hello2 
alvin  12084 0.0 0.0  4152  340 pts/0  S  14:41  0:00 ./hello3 
alvin  12089 0.0 0.0 112648  964 pts/0  R+  14:41  0:00 grep --color=auto hello 
[alvin@VM_0_16_centos test]$ killall hello1 
[1]  Terminated       ./hello1 
[alvin@VM_0_16_centos test]$ ps aux | grep hello 
alvin  12074 0.0 0.0  4152  344 pts/0  S  14:41  0:00 ./hello2 
alvin  12084 0.0 0.0  4152  340 pts/0  S  14:41  0:00 ./hello3 
alvin  12170 0.0 0.0 112648  964 pts/0  R+  14:42  0:00 grep --color=auto hello

可以看到,hello1 進(jìn)程已經(jīng)被殺死了。

剩下的 hello2 和 hello3 進(jìn)程,我們想一次性殺死他們,也就是批量殺死進(jìn)程,可以如下操作:

[alvin@VM_0_16_centos test]$ killall hello* 
hello: no process found 
hello1: no process found 
hello.c: no process found 
[2]- Terminated       ./hello2 
[3]+ Terminated       ./hello3

如此,以 hello 開頭的進(jìn)程全部被干掉。

2、終止某個用戶所運(yùn)行的進(jìn)程

我們可以殺死以滿足某個正則表達(dá)式的一組進(jìn)程,同樣的,我們也可以殺死某個用戶運(yùn)行的所有進(jìn)程。

比如,用戶 harry 現(xiàn)在運(yùn)行如下幾個進(jìn)程:

[alvin@VM_0_16_centos test]$ ps aux | grep harry 
root   13675 0.0 0.2 148236 5584 ?    Ss  14:55  0:00 sshd: harry [priv] 
harry  13677 0.0 0.1 148236 2944 ?    S  14:55  0:00 sshd: harry@pts/1 
root   13678 0.0 0.2 148236 5444 ?    Ss  14:55  0:00 sshd: harry [priv] 
harry  13680 0.0 0.1 148236 2252 ?    S  14:55  0:00 sshd: harry@notty 
harry  13681 0.0 0.1 53228 2168 ?    Ss  14:55  0:00 /usr/libexec/openssh/sftp-server 
harry  13694 0.0 0.1 116436 3252 pts/1  Ss+ 14:55  0:00 -bash 
harry  13948 0.0 0.0  4152  344 pts/1  S  14:57  0:00 ./hello1 
harry  13952 0.0 0.0  4152  344 pts/1  S  14:57  0:00 ./hello2 
harry  13959 0.0 0.0  4152  344 pts/1  S  14:57  0:00 ./hello3 
alvin  14005 0.0 0.0 112648  964 pts/0  R+  14:58  0:00 grep --color=auto harry

我們現(xiàn)在想殺死 harry 所運(yùn)行的所有進(jìn)程,可以以如下方式操作:

killall -u harry

運(yùn)行結(jié)果如下:

[alvin@VM_0_16_centos test]$ sudo killall -u harry 
[alvin@VM_0_16_centos test]$ ps aux | grep harry 
alvin  14040 0.0 0.0 112648  964 pts/0  R+  14:58  0:00 grep --color=auto harry

但是,這個選項(xiàng)要慎用,因?yàn)樗鼤言撚脩羲羞M(jìn)程,包括終端進(jìn)程,全部殺死,將導(dǎo)致該用戶直接退出。所以,如果不想挨揍的話不要輕意嘗試這個選項(xiàng)。

3、終于時間的方式終止進(jìn)程

假如我們現(xiàn)在運(yùn)行了很多程序,我們只想殺死運(yùn)行時間超過 5h 的進(jìn)程,那么可以使用 -o 選項(xiàng),其中 o 代表 older 如下:

killall -o 5h

同樣地,如果你想殺死進(jìn)行時間小于 4h 的進(jìn)程,那么可以使用 -y 選項(xiàng),其中 y 代表 younger ,如下:

killall -y 4h

這兩個選項(xiàng)同樣非常粗暴,也會把終端退出,所以先不演示了。

4、忽略大小寫

默認(rèn)情況下,killall 命令是大小寫敏感的,所以我們?nèi)绻麑戝e大小寫,將無法正確殺死進(jìn)程。

[alvin@VM_0_16_centos test]$ killall HELLO1 
TEST1: no process found

如果我們想忽略大小寫,可以加上 -I (大寫字母 i )選項(xiàng)。

[alvin@VM_0_16_centos test]$ killall -I HELLO1 
[1]  Terminated       ./hello1

5、關(guān)閉命令執(zhí)行回顯

默認(rèn)情況下,killall 會告訴你命令執(zhí)行情況,但是,我們?nèi)绻魂P(guān)心它的執(zhí)行結(jié)果,只想讓它靜默執(zhí)行,該怎么辦?只需加上 -q 選項(xiàng)即可,其中 q 表示 quite , 如下:

[alvin@VM_0_16_centos test]$ killall HELLO2 
HELLO2: no process found 
[alvin@VM_0_16_centos test]$ killall -q HELLO2 
[alvin@VM_0_16_centos test]$

6、列出所有支持的信號

如前文所述,默認(rèn)情況下,killall 命令將發(fā)送 SIGTERM 信號,那么,安可以發(fā)送其它信號嗎?當(dāng)然是可以的??梢允褂?-l 選項(xiàng)查看 killall 所支持的所有信號:

[alvin@VM_0_16_centos test]$ killall -l 
HUP INT QUIT ILL TRAP ABRT IOT BUS FPE KILL USR1 SEGV USR2 PIPE ALRM TERM 
STKFLT CHLD CONT STOP TSTP TTIN TTOU URG XCPU XFSZ VTALRM PROF WINCH IO PWR SYS 
UNUSED

你可以使用 -s 選項(xiàng)(后面跟一個信號名)來向一個進(jìn)程發(fā)送特殊信號。

7、交互式操作

如果你在殺死多個進(jìn)程時不太放心,擔(dān)心把不該殺死的進(jìn)程給殺死了,那么你可以使用 -i 選項(xiàng),這樣就可以自由決定哪些進(jìn)程應(yīng)該被殺死,哪些進(jìn)程應(yīng)該被保留。

[alvin@VM_0_16_centos test]$ killall -i hello* 
Kill hello2(13825) ? (y/N) y 
Kill hello3(13831) ? (y/N) N 
hello: no process found 
hello1: no process found 
hello3: no process found 
hello.c: no process found 
[2]- Terminated       ./hello2

8、等待直到某個進(jìn)程被終止

當(dāng)一個信號被發(fā)送至某個進(jìn)程,如果你想確定該進(jìn)程已經(jīng)被殺死了才返回執(zhí)行結(jié)果,可以使用 -w 選項(xiàng),其中 w 代表 wait ,如下:

[alvin@VM_0_16_centos test]$ killall -w hello1 
[4]+ Terminated       ./hello1

這里好像看不出什么效果,但實(shí)際執(zhí)行的時候,可以發(fā)現(xiàn)執(zhí)行結(jié)果會在一兩秒后出現(xiàn),而不加 -w 選項(xiàng)的話,執(zhí)行結(jié)果馬上就顯示。

總結(jié)

以上所述是小編給大家介紹的Linux下使用killall命令終止進(jìn)程的8大用法實(shí)例詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

相關(guān)文章

  • Apache啟用GZIP壓縮網(wǎng)頁傳輸方法

    Apache啟用GZIP壓縮網(wǎng)頁傳輸方法

    上一篇文章我們已經(jīng)介紹了Apache啟用GZIP壓縮網(wǎng)頁的方法,這里又發(fā)現(xiàn)了一篇好文章,特分享給大家
    2013-06-06
  • ubuntu配置tftp服務(wù)的步驟小結(jié)

    ubuntu配置tftp服務(wù)的步驟小結(jié)

    這篇文章主要介紹了ubuntu配置tftp服務(wù)的步驟小結(jié),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • Linux虛擬主機(jī)面板 kloxo安裝及漢化教程分享

    Linux虛擬主機(jī)面板 kloxo安裝及漢化教程分享

    Kloxo的前身是lxadmin,是一款免費(fèi)的虛擬主機(jī)管理系統(tǒng),安裝簡單,功能強(qiáng)大,可以快速地在red hat,centos系列l(wèi)inux系統(tǒng)的主機(jī)上搭建LAMP環(huán)境。新版以完全解除限制無限域名綁定
    2012-09-09
  • SpringBoot整合Activiti7的實(shí)現(xiàn)代碼

    SpringBoot整合Activiti7的實(shí)現(xiàn)代碼

    這篇文章主要介紹了SpringBoot整合Activiti7的實(shí)現(xiàn)代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • 關(guān)于Linux下對于makefile的理解

    關(guān)于Linux下對于makefile的理解

    下面小編就為大家?guī)硪黄P(guān)于Linux下對于makefile的理解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01
  • 如何對安裝Linux的服務(wù)器進(jìn)行緩存清除

    如何對安裝Linux的服務(wù)器進(jìn)行緩存清除

    這篇文章主要介紹了如何對安裝Linux的服務(wù)器進(jìn)行緩存清除問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • Linux安裝NodeJs并配合Nginx實(shí)現(xiàn)反向代理

    Linux安裝NodeJs并配合Nginx實(shí)現(xiàn)反向代理

    本篇文章主要介紹了Linux安裝NodeJs并配合Nginx實(shí)現(xiàn)反向代理,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2016-11-11
  • Ubuntu 20.04換阿里源的方法

    Ubuntu 20.04換阿里源的方法

    這篇文章主要介紹了Ubuntu 20.04換阿里源的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • 解決CentOS 7升級Python到3.6.6后yum出錯問題總結(jié)

    解決CentOS 7升級Python到3.6.6后yum出錯問題總結(jié)

    這篇文章主要介紹了CentOS 7升級Python到3.6.6后yum出錯問題解決總結(jié),本文給大家介紹的非常詳細(xì)具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-09-09
  • Linux中Curl參數(shù)詳解實(shí)踐應(yīng)用

    Linux中Curl參數(shù)詳解實(shí)踐應(yīng)用

    在現(xiàn)代網(wǎng)絡(luò)開發(fā)和運(yùn)維工作中,curl 命令是一個不可或缺的工具,它是一個利用 URL 語法在命令行下工作的文件傳輸工具,支持多種協(xié)議,如 HTTP、HTTPS、FTP 等,本文給大家介紹了Linux中Curl參數(shù)詳解實(shí)踐應(yīng)用,需要的朋友可以參考下
    2025-01-01

最新評論

清水河县| 平乡县| 西峡县| 延庆县| 大名县| 肇东市| 乌拉特中旗| 丹寨县| 射洪县| 汤阴县| 孝昌县| 荣成市| 阜宁县| 宝坻区| 深水埗区| 庄浪县| 临西县| 双柏县| 惠来县| 永定县| 长春市| 防城港市| 瑞金市| 探索| 南昌县| 青河县| 南江县| 东城区| 孝感市| 永靖县| 宁津县| 九寨沟县| 镇原县| 泰州市| 天柱县| 平顺县| 永康市| 东兰县| 永仁县| 马公市| 阿拉善左旗|