首頁 > 軟體

Linux常用命令 pidof 使用簡述

2020-06-16 16:28:00

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。

如果您有任何疑問或反饋,請隨時發表評論。


IT145.com E-mail:sddin#qq.com