中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

pgrep與pkill命令怎么在Linux系統中使用

發布時間:2021-03-12 15:41:12 來源:億速云 閱讀:203 作者:Leah 欄目:系統運維

今天就跟大家聊聊有關pgrep與pkill命令怎么在Linux系統中使用,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

pgrep, pkill – 查找或者發信號給進程通過名稱和其它屬性。

語法

pgrep [-flvx] [-n | -o] [-d delim] [-P ppidlist] [-g pgrplist] [-s sidlist] [-u euidlist] [-U uidlist] [-G gidlist] [-J projidlist] [-t termlist] [-T taskidlist] [-c ctidlist] [-z zoneidlist] [pattern]

pkill [-signal] [-fvx] [-n | -o] [-P ppidlist] [-g pgrplist] [-s sidlist] [-u euidlist] [-U uidlist] [-G gidlist] [-J projidlist] [-t termlist] [-T taskidlist] [-c ctidlist] [-z zoneidlist] [pattern]


說明
pgrep程序檢查在系統的中活動進程,報告進程屬性匹配命令行上指定條件的進程的ID。每一個進程ID以一個十進制數表示,通過一個分割字符串和下一個ID分開,默認的分割字符串是一個新行。對于每個屬性選項,用戶可以在命令行上指定一個以逗號分割的可能值的集合。例如,

代碼如下:


pgrep -G other,daemon


匹配真實組ID是other或者是daemon的進程。如果多個條件被指派,這些匹配條件按邏輯與”AND”規則運算。例如,

代碼如下:


pgrep -G other,daemon -U root,daemon


匹配進程它的屬性是:
(真實的組ID是other或者是daemon) 與 (真實的用戶ID是root或者是daemon)
pkill函數和pgrep相同,除了匹配的進程被信號通知就像用kill(1)替代了pgrep的進程ID的輸出。一個信號名稱或者數字可以作為pkill的第一個命令行選項。

選項
支持下面的選項:The following options are supported:
-c ctidlist 僅匹配列表中列出的ID的進程。
-d delim 指定每一個匹配的進程ID之間分割字符串。如果沒有 -d 選項指定,默認的是新行字符。-d 選項僅在pgrep命令中有效。
-f正則表達式模式將執行與完全進程參數字符串 (從/proc/nnnnn/psinfo文件的pr_psargs字段獲得)匹配。如果沒有 -f 選項,表達式僅對執行文件名稱(從/proc/nnnnn/psinfo文件pr_fname字段獲得)匹配。
-g pgrplist僅匹配進程組ID在給定列表中的進程。如果組0包括在列表中,這個被解釋為pgrep或者pkill進程的組ID。
-G gidlist僅匹配真實組ID在給定列表中的進程。每一個組ID可以使用組名稱或者數字的組ID指定。
-J projidlist匹配項目ID在給定列表中的進程。每一個項目ID可以使用項目的名稱或者數字項目ID來指定。
-l長格式輸出。輸出每一個匹配進程的名稱連同進程ID。進程名稱從pr_psargs 或者 pr_fname字段獲得,依賴于-f選項是否指定。-l選項僅在pgrep命令中有效。
-n匹配最新(最近生成的)符合所有其它匹配條件的進程。不能和-o選項一起使用。
-o匹配最舊(最早生成的)符合所有其它匹配條件的進程。不能和-n選項一起使用。
-P ppidlist 僅匹配給定列表中父進程ID的進程。
-s sidlist 僅匹配進程會話ID在給定列表中的進程。如果ID 0在列表中,這個解釋為pgrep或者pikill進程的會話ID。
-t termlist 僅匹配與給定列表中終端關聯的進程。每一個終端指定為在/dev中終端設備路徑名稱的后綴。例如term/a 或者 pts/0。
-T taskidlist 僅匹配在給定列表中任務ID的進程。如果ID 0包括在列表中,這個解釋為pgrep或者pikill進程的會話ID。
-u euidlist 僅匹配有效用戶ID在給定列表中的進程。每個用戶ID可以通過一個登錄名稱或者數字的用戶ID指定。
-U uidlist 僅匹配真實的用戶ID在給定列表中的進程。每個用戶ID可以通過一個登錄名稱或者數字的用戶ID指定。
-v 反向匹配。匹配所有的進程除了符合匹配條件的。
-x 僅認為進程其參數字符串或者執行文件名稱正確匹配規定模式是匹配的進程。模式被認為是準確的當所有在進程參數字符串或者可執行文件名稱的字符匹配模式。
-z zoneidlist 僅匹配區域ID在給定列表中的進程。每一個區域ID可以使用一個區域名稱或者一個數字的區域ID指定。這個選項僅在全局區域中執行有效。如果pkill程序用來往其它區域的進程發信號,進城必須宣稱{PRIV_PROC_ZONE}特權。
-signal 指定發往每一個匹配進程的信號。如果沒有指定,SIGTERM 是默認的信號。-signal僅在pkill命令中作為第一個選項有效。信號可以是在signal.h中定義的沒有SIG前綴的一個符號名字,也可是一個相應的信號數值。

例子

例子1 獲得一個進程ID

獲得sendmail的進程ID:

代碼如下:


example% pgrep -x -u root sendmail
283

例子2 終止一個進程

終止最近生成的xterm:

代碼如下:


example% pkill -n xterm
Exit Status

如下退出值被返回:

0 一個或者多個進程被匹配。
1 沒有進程被匹配。
2 指定了無效的命令行參數。
3 出現一個致命的錯誤。

例子3 用pkill命令踢出在線登錄用戶
由于linux服務器允許多用戶登錄,公司很多人知道密碼,工作造成一定的障礙
所以需要有時踢出指定的用戶
#who   查出當前有那些終端登錄(用 w 命令更詳細)

# whoroot     pts/0        2010-10-28 09:36 (192.168.1.236)root     pts/2        2010-10-28 09:40 (192.168.1.27)root     pts/3        2010-10-28 10:02 (192.168.1.82)root     pts/4        2010-10-20 16:06 (192.168.1.244)

我想踢出IP為82的登錄,其對應的tty為pts/3

# pkill -kill -t pts/3

代碼如下:

# whoroot     pts/0        2010-10-28 09:36 (192.168.1.236)root     pts/2        2010-10-28 09:40 (192.168.1.27)root     pts/4        2010-10-20 16:06 (192.168.1.244)

看完上述內容,你們對pgrep與pkill命令怎么在Linux系統中使用有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宁明县| 遵化市| 彭山县| 泰宁县| 营山县| 乾安县| 迭部县| 灌阳县| 敦化市| 泾源县| 平度市| 错那县| 朝阳市| 洱源县| 榆林市| 临猗县| 永嘉县| 大邑县| 英德市| 元阳县| 独山县| 姚安县| 垫江县| 襄城县| 汨罗市| 秭归县| 梅河口市| 迁安市| 桃园市| 宝鸡市| 获嘉县| 福鼎市| 承德市| 那曲县| 绥棱县| 科技| 临桂县| 侯马市| 黄龙县| 广德县| 邵东县|