如何在Linux杀死进程的名字?
使用這些Linux命令強迫辭職行為不端的過程
解釋的意思最簡單的詞是“過程”,它是一個運行實例的任何應用程序或程序在您的系統上。 你可能同時運行多個應用程序,如瀏覽、聽音樂致力于終端等。有許多與這些相關的后臺進程運行的應用程序的用戶。
每一個應用程序或程序運行在您的系統上創建多個進程與單一應用程序相關聯。 有時這可能是一個問題,擺脫這些過程是唯一的選擇。
“殺死”的過程是一個有用的選擇Linux提供你停止正在進行的過程,是一個前臺進程或后臺進程。 在本文中,我們將回顧的命令kill,pkill和killall強制退出系統上的任何過程。
為什么殺死一個過程?
殺死一個過程的理解這個概念是重要的在本教程之前。 殺人似乎是一個非常殘酷的方式來表達這一概念,但這比喻是什么意思是強行中止進程。
為什么中止或退出一個持續的過程? 當多個進程在后臺運行,或者其中的一些不當的可能故障,可能會導致您的系統。 這延遲你的任務故障過程可能凍結您的系統。
有時,放棄所有的行為不端的過程似乎是唯一的選擇系統恢復正常。 Linux可以殺死一個進程使用pid或者進程名稱。
使用pgrep命令
大部分的Linux用戶熟悉grep命令。 的pgrep命令可用于類似的grep.
pgrep命令使用時,顯示pid運行的過程中指定的命令。 這個命令將被證明是非常有用的,同時使用pkill命令。
一般的語法:
pgrep [options] [pattern]重要的選擇pgrep命令
| 選項 | 描述 |
| -u | 特定的用戶所擁有的進程id列表 |
| -c | 計算數量的匹配過程 |
| -I | 只列出流程名稱 |
| -a | 過程的完整路徑名稱列表 |
讓我們演示的使用pgrep命令使用一個例子。
pgrep -u gaurav gnome在這里,我們希望看到的pids過程的gnome用戶所有的“gaurav”。 選項-u允許您列出pids的過程由一個特定的用戶。 在這種情況下,用戶gaurav。
輸出:
gaurav@ubuntu:~$ pgrep -u gaurav gnome 1752 1755 1909 1922 2021 2576 4279 gaurav@ubuntu:~$我們推進本教程,pgrep命令將幫助我們確認如果進程被殺或仍在運行。
現在讓我們轉向pkill命令和執行。
使用pkill命令
您可以使用pkill在Linux中命令殺死進程使用進程名稱。 即使你不知道pid一些過程,甚至你可以殺了那個特定進程使用pkill命令。
可以指定進程的完整名稱或部分名稱同時使用pkill命令。 即使你輸入部分名稱的過程pkill命令將匹配所有正在運行的流程的匹配名稱中輸入的命令。
語法:
pkill [options][process_name_pattern]例子:
讓我們顯示使用當前正在運行的進程top命令。 您還可以使用ps命令列表的過程。
top top - 14:24:02 up 3:12, 1 user, load average: 0.29, 0.48, 0.58 Tasks: 221 total, 1 running, 172 sleeping, 0 stopped, 1 zombie %Cpu(s): 5.6 us, 1.0 sy, 0.0 ni, 92.9 id, 0.4 wa, 0.0 hi, 0.1 si, 0.0 st KiB Mem : 3928240 total, 610456 free, 2233152 used, 1084632 buff/cache KiB Swap: 4083708 total, 3378884 free, 704824 used. 1187268 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 4077 gaurav 20 0 3312128 673480 118360 S 19.6 17.1 15:13.23 Web Content 3712 gaurav 20 0 3953008 453544 116476 S 4.0 11.5 9:28.39 MainThread 2010 gaurav 20 0 4084232 111096 45024 S 1.7 2.8 3:14.85 gnome-shell 1197 root 20 0 1039612 33704 22988 S 1.0 0.9 3:04.42 Xorg 1426 couchdb 20 0 3772396 16908 2520 S 0.7 0.4 1:50.83 beam.smp 3288 gaurav 20 0 722480 25048 18272 S 0.7 0.6 0:06.84 gnome-terminal- 3915 gaurav 20 0 2804900 231524 111228 S 0.7 5.9 0:54.42 Web Content 4146 gaurav 20 0 3017924 245304 120604 S 0.7 6.2 2:01.21 Web Content 4417 gaurav 20 0 2964208 234396 119160 S 0.7 6.0 0:59.90 Web Content 4860 gaurav 20 0 3066800 372920 132544 S 0.7 9.5 0:48.20 Web Content 16007 gaurav 20 0 41944 3780 3116 R 0.7 0.1 0:00.28 top使用top命令將顯示多個進程在終端。 讓我們試著顯示流程與特定名稱。 我們將使用grep命令來顯示一個進程的名稱匹配的字符串“mongo”。
top | grep -i mongo注意:在這里,我要使用- I選項搜索不區分大小寫的。
該命令的輸出將顯示流程匹配的名字“mongo”
1158 mongodb 20 0 288564 4848 1320 S 0.7 0.1 1:03.22 mongod 1158 mongodb 20 0 288564 4848 1320 S 1.0 0.1 1:03.25 mongod 1158 mongodb 20 0 288564 4848 1320 S 0.7 0.1 1:03.27 mongod 1158 mongodb 20 0 288564 4848 1320 S 0.7 0.1 1:03.29 mongod 1158 mongodb 20 0 288564 4848 1320 S 0.7 0.1 1:03.31 mongod 1158 mongodb 20 0 288564 4848 1320 S 0.7 0.1 1:03.33 mongod 1158 mongodb 20 0 288564 4848 1320 S 1.0 0.1 1:03.36 mongod 1158 mongodb 20 0 288564 4848 1320 S 0.7 0.1 1:03.38 mongod 1158 mongodb 20 0 288564 4848 1320 S 0.7 0.1 1:03.40 mongod 1158 mongodb 20 0 288564 4848 1320 S 1.0 0.1 1:03.43 mongod 1158 mongodb 20 0 288564 4848 1320 S 0.7 0.1 1:03.45 mongod 1158 mongodb 20 0 288564 4848 1320 S 1.0 0.1 1:03.48 mongod 1158 mongodb 20 0 288564 4848 1320 S 0.3 0.1 1:03.49 mongod 1158 mongodb 20 0 288564 4848 1320 S 1.0 0.1 1:03.52 mongod 1158 mongodb 20 0 288564 4848 1320 S 0.7 0.1 1:03.54 mongod 1158 mongodb 20 0 288564 4848 1320 S 1.0 0.1 1:03.57 mongod現在,我們將使用pkill命令殺死進程名為“mongo”。
pkill mongo這個命令將殺死mongo過程。 我們可以確認是否已被迫退出使用pgrep命令顯示pid正在運行的進程根據由用戶指定的標準。
gaurav@ubuntu:~$ pgrep mongo gaurav@ubuntu:~$這個命令將返回沒有值。 這個確認過程“mongo”現在使用死亡pkill命令。
選擇常用的pkill命令
在使用pkill命令我們將需要選擇適當的和容易使用pkill命令。
| 選項 | 描述 |
| -f | 匹配完整的參數包括空格,引號,特殊字符 |
| -u | 通知pkill過程匹配過程由指定的用戶 |
| -1 | 重新加載的過程 |
| -9 | 死亡的過程 |
| -15 | 優雅地中止過程 |
讓我們看一個例子pkill命令使用-f選擇。
上有兩個命令正在執行終端,如下所示。
ping bbc.comping youtube.com發起的流程ping命令。 現在,假設我們希望只有一個進程終止“ping youtube.com”然后我們必須使用-f選擇與pkill命令殺死進程與一個特定的名字從進程名稱包括空格和引號。
命令:
gaurav@ubuntu:~$ pkill -f "ping youtube.com" gaurav@ubuntu:~$結果:
gaurav@ubuntu:~$ ping youtube.com PING youtube.com (142.250.67.206) 56(84) bytes of data. 64 bytes from bom12s08-in-f14.1e100.net (142.250.67.206): icmp_seq=1 ttl=117 time=30.9 ms 64 bytes from bom12s08-in-f14.1e100.net (142.250.67.206): icmp_seq=2 ttl=117 time=121 ms 64 bytes from bom12s08-in-f14.1e100.net (142.250.67.206): icmp_seq=206 ttl=117 time=86.5 ms 64 bytes from bom12s08-in-f14.1e100.net (142.250.67.206): icmp_seq=207 ttl=117 time=105 ms Terminated gaurav@ubuntu:~$在這里,“ping youtube.com“流程現在死亡,”ping bbc.com“還在終端上運行。
在情況下,如果我們使用了pkill ping命令,它就會殺了ping流程,這是不可取的。
信號使用pkill命令
pkill部隊戒煙的過程通過發送特定的信號,這一過程。 有三個可能的信號pkill命令可以發送到過程根據用戶提供的命令。
下面是列表中可用的信號。
| 信號 | 規范 |
| 1(HUP) | 重新加載指定的過程 |
| 9(KILL) | 殺死指定的過程 |
| 15(TERM) | 溫柔地停止或中止指定的過程 |
對于本教程,我們將嚴重依賴KILL信號。 讓我們通過一些例子來更好地理解它。
使用pgrep命令的pid匹配對apache的名稱。
gaurav@ubuntu:~$ pgrep apache 1218 10402 10403 gaurav@ubuntu:~$ pkill -KIll apache或者你也可以用命令(如與數字。 1、9、15)
pkill -9 apache上面所示的命令都殺死了apache進程。 確認的pgrep再次命令。
gaurav@ubuntu:~$ pgrep apache gaurav@ubuntu:~$隨著pgrep命令返回任何輸出,證明過程apache已經被殺死。
結論
在本教程中,我們了解到了pkill命令,以及它是如何用于殺死進程名稱直接的使用過程。 我們也了解pgrep命令用于獲取進程的進程id由任何特定的用戶。 的pgrep命令允許我們再確認如果進程被殺。
總結
以上是生活随笔為你收集整理的如何在Linux杀死进程的名字?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 推荐电影名字列表04.18
- 下一篇: armbian linux装AdGuar