pidof
是一個命令行程序,可讓您找到正在運行程序的進程ID。在教程中,我們將說明如何在Linux 使用pidof命令。
對于基于Red Hat和Debian的發(fā)行版,pidof命令有不同的實現(xiàn)。在Red Hat發(fā)行版中,pidof
命令是procps-ng
軟件包的一部分。
在Debian它是sysvinit-utils
的一部分。我們將介紹兩種實現(xiàn)方式共有的選項。
pidof命令
pidof
命令的語法是pidof [OPTIONS] PROGRAM_NAME
。命令接受零個或多個進程名稱作為參數(shù)。通常您都是將一個名稱傳遞給pidof
。
在不帶任何選項運行pidof命令時,將打印與指定進程名稱匹配的進程PID。例如命令pidof sshd
將會查找SSH服務進程PID。
如果有正在運行的進程名稱與sshd
匹配,則其PID將打印在終端屏幕。如果未找到匹配的進程PID,則輸出為空。
當至少一個正在運行的程序與名稱匹配時,pidof命令返回0
。否則,退出代碼為1
。這在編寫shell腳本時很有用。
pidof sshd
4382 4368 811
為確保僅顯示要搜索的進程的PID,請使用進程的完整路徑名作為參數(shù)。
例如,如果您有兩個名稱相同的進程位于兩個不同的目錄中,pidof
將顯示兩個正在運行進程的PID??梢允褂?code>-s選項強制pidof
僅顯示一個PID。
-o
選項可讓您排除具有指定PID的進程,也可以使用%PPID
指定父進程的PID排除進程。
要僅返回使用相同根目錄運行的進程的PID,請使用-c
選項。此選項僅在以root用戶或具有sudo權(quán)限運行pidof
時起作用。
pidof -s program_name
pidof -o pid program_name
pidof -c pid program_name
pidof示例
示例展示如何組合使用pidof命令和kill命令來終止進程。假設(shè)Firefox瀏覽器已無響應,因此您需要終止Firefox進程。
首先要做是運行命令pidof firefox
找到Firefox進程的PID。命令將打印所有Firefox進程。
一旦您知道Firefox進程的PID,請運行Kill命令發(fā)送SEGTERM
信號終止所有PID,您還可以使用命令替換表達式$(...)
在一個命令中終止多個PID。
pidof firefox
sudo kill -9 2551 2514 1963 1856 1771
sudo kill -9 $(pidof firefox)
結(jié)論
pidof命令用于查找指定正在運行進程PID。pidof
是一個簡單的命令,沒有太多選項。
通常,您只需使用pidof命令搜索的程序的名稱查找進程pid。如果您有任何疑問或反饋,請隨時發(fā)表評論。
-
Linux
+關(guān)注
關(guān)注
87文章
11292瀏覽量
209322 -
PID
+關(guān)注
關(guān)注
35文章
1472瀏覽量
85476 -
命令
+關(guān)注
關(guān)注
5文章
683瀏覽量
22011
發(fā)布評論請先 登錄
相關(guān)推薦
評論