2021-05-12 14:32:11
Linux常用命令 pidof 使用簡述
pidof是一個命令列實用程式,可讓您找到正在執行的程式的進程ID。
在本文中,我們將解釋如何使用Linux pidof命令。
如何使用pidof命令
對於基於Red Hat和Debian的發行版,有pidof的不同實現。 在Red Hat發行版中,pidof命令是procps-ng軟體包的一部分,而在Debian上,它是sysvinit-utils的一部分。 我們將介紹兩種實現方式共有的選項。
pidof命令的語法如下:
pidof [選項] 程式名稱
該命令接受零個或多個名稱作為引數,但是通常,您只將一個名稱傳遞給pidof。
不帶任何選項呼叫時,pidof將列印與給定名稱匹配的所有正在執行的程式的PID。 例如,要查詢vim的PID,應執行:
[linuxidc@linux:~/www.linuxidc.com]$ pidof vim
4942
如果有名稱與sshd匹配的正在執行的進程,則其PID將顯示在螢幕上。 如果未找到匹配項,則輸出將為空。
輸出
4942
當至少一個正在執行的程式與請求的名稱匹配時,pidof返回0。 否則,退出程式碼為1。在shell指令碼中使用時,這很有用。
為確保僅顯示要搜尋的程式的PID,請使用該程式的完整路徑名作為引數。 例如,如果您在兩個不同的目錄中有兩個同名的執行程式,則pidof將顯示兩個執行程式的PID。
預設情況下,顯示匹配的正在執行程式的所有PID。 使用-s選項強制pidof只顯示一個PID:
$pidof -s 程式名稱
-o選項允許您從命令輸出中排除具有給定PID的進程:
$pidof -o pid 程式名稱
當使用-o選項呼叫pidof時,可以使用名為%PPID的特殊PID來表示呼叫Shell程式或Shell指令碼。
要僅返回使用相同根目錄執行的進程的PID,請使用-c選項。
該選項僅適用於以root或sudo使用者身份執行的pidof:
$pidof -c pid 程式名稱
pidof命令的用法範例
以下範例顯示了如何結合使用pidof命令和kill命令來終止程式。
假設Firefox瀏覽器已無響應,並且您需要終止Firefox進程。 首先,使用pidof查詢PID:
[linuxidc@linux:~/www.linuxidc.com]$ pidof firefox
該命令將列印所有Firefox進程:
輸出
5231 5207 5166 5131 5090
一旦知道Firefox處理了PID,就傳送SEGTERM信號終止所有PID:
[linuxidc@linux:~/www.linuxidc.com]$ sudo kill -9 5231 5207 5166 5131 5090
您還可以使用命令替換表示式$ $(...),用一個命令終止程式:
[linuxidc@linux:~/www.linuxidc.com]$ sudo kill -9 $(pidof firefox)
總結
pidof命令用於查詢特定正在執行的程式的PID。
pidof是一個簡單的命令,沒有太多選項。 通常,您只會使用要搜尋的程式的名稱來呼叫pidof。
如果您有任何疑問或反饋,請隨時發表評論。
相關文章