25個有用的Linux程序監控“ps命令”示例


“ps”命令是用於監控Linux作業系統中程序的常用工具。它代表“程序狀態”,用於顯示系統當前正在執行的程序資訊。這些資訊可用於故障排除、最佳化效能以及識別潛在的安全問題。在本文中,我們將討論25個有用的“ps命令”示例,用於Linux程序監控。

顯示所有程序的列表

要顯示Linux系統上所有正在執行的程序的列表,請使用以下命令:

ps aux

這將顯示所有程序的列表,以及它們的PID(程序ID)、CPU使用率、記憶體使用率和其他相關資訊。

顯示所有程序的列表,並顯示完整的命令列

要顯示所有程序的列表,以及它們的完整命令列,請使用以下命令:

ps auxf

這將顯示所有程序的樹狀結構,使您更容易瞭解它們之間的關係。

顯示按CPU使用率排序的所有程序列表

要顯示按CPU使用率排序的所有程序的列表,請使用以下命令:

ps aux --sort=-%cpu

這將顯示按CPU使用率降序排列的所有程序的列表。

顯示按記憶體使用率排序的所有程序列表

要顯示按記憶體使用率排序的所有程序的列表,請使用以下命令:

ps aux --sort=-%mem

這將顯示按記憶體使用率降序排列的所有程序的列表。

顯示特定使用者擁有的所有程序列表

要顯示特定使用者擁有的所有程序的列表,請使用以下命令:

ps -u username

將“username”替換為您要檢視其程序的使用者的實際使用者名稱。

顯示特定命令的所有程序列表

要顯示特定命令的所有程序的列表,請使用以下命令:

ps -C command

將“command”替換為您要檢視其程序的命令的名稱。

顯示特定終端中所有正在執行的程序列表

要顯示特定終端中所有正在執行的程序的列表,請使用以下命令:

ps -t tty

將“tty”替換為您要檢視其程序的終端的名稱。

顯示特定程序組中所有程序的列表

要顯示特定程序組中所有程序的列表,請使用以下命令:

ps --pid pgid

將“pgid”替換為您要檢視其程序的程序組的ID。

顯示特定父程序的所有子程序列表

要顯示特定父程序的所有子程序的列表,請使用以下命令:

ps --ppid pid

將“pid”替換為您要檢視其子程序的父程序的ID。

顯示所有具有特定名稱的程序列表

要顯示所有具有特定名稱的程序列表,請使用以下命令:

ps -C name

將“name”替換為您要檢視的程序的名稱。

顯示所有殭屍程序的列表

要顯示所有殭屍程序的列表,請使用以下命令:

ps aux | awk '$8=="Z" {print}'

殭屍程序是指已完成執行但尚未被系統正確清理的程序。

顯示特定狀態下所有程序的列表

要顯示特定狀態下所有程序的列表,請使用以下命令:

ps -eo state,pid,user,command | grep state

將“state”替換為您要檢視的狀態(例如,R表示正在執行,S表示休眠,Z表示殭屍)。

顯示所有具有特定優先順序的程序列表

要顯示所有具有特定優先順序的程序的列表,請使用以下命令:

ps -o pid,ppid,user,nice,cmd --sort=-nice

這將顯示按優先順序降序排列的所有程序的列表。

顯示所有具有特定CPU親緣性的程序列表

要顯示所有具有特定CPU親緣性的程序的列表,請使用以下命令:

ps -eo pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,wchan:14,comm | grep <cpu>

將“<cpu>”替換為您要檢視其程序的CPU。

顯示所有使用特定埠的程序列表

要顯示所有使用特定埠的程序列表,請使用以下命令:

sudo lsof -i :port

將“port”替換為您要檢視其程序的埠號。

顯示所有以特定使用者身份執行的程序列表

要顯示所有以特定使用者身份執行的程序列表,請使用以下命令:

ps -U username -u username u

將“username”替換為您要檢視其程序的使用者名稱稱。

顯示特定目錄中所有正在執行的程序列表

要顯示特定目錄中所有正在執行的程序列表,請使用以下命令:

lsof +D /directory

將“/directory”替換為您要檢視其程序的目錄路徑。

顯示所有執行特定可執行檔案的程序列表

要顯示所有執行特定可執行檔案的程序列表,請使用以下命令:

ps -C executable_name

將“executable_name”替換為您要檢視其程序的可執行檔案的名稱。

顯示所有使用特定檔案的程序列表

要顯示所有使用特定檔案的程序列表,請使用以下命令:

lsof /path/to/file

將“/path/to/file”替換為您要檢視其程序的檔案路徑。

顯示所有具有特定環境變數的程序列表

要顯示所有具有特定環境變數的程序列表,請使用以下命令:

ps -eo pid,user,args | grep -E '^ *PID|^ *[0-9]+ .*VARNAME=VALUE'

將“VARNAME”替換為您要檢視其程序的環境變數的名稱,並將“VALUE”替換為其值。

顯示所有使用特定網路介面的程序列表

要顯示所有使用特定網路介面的程序列表,請使用以下命令:

sudo lsof -i -n -P | grep <interface>

將“<interface>”替換為您要檢視其程序的網路介面的名稱。

顯示所有具有特定使用者定義格式的程序列表

要顯示所有具有特定使用者定義格式的程序列表,請使用以下命令:

ps -eo pid,user,%cpu,%mem,command --sort=-%mem | head

這將顯示按記憶體使用率降序排列的所有程序的列表,並使用使用者定義的格式。

顯示所有具有特定記憶體地址的程序列表

要顯示所有具有特定記憶體地址的程序列表,請使用以下命令:

sudo pmap -x pid | grep address

將“pid”替換為您要檢視其記憶體地址的程序的ID,並將“address”替換為您要檢視的記憶體地址。

顯示所有具有特定使用者定義過濾器的程序列表

要顯示所有具有特定使用者定義過濾器的程序列表,請使用以下命令:

ps -eo pid,user,%cpu,%mem,command --sort=-%mem | awk '{if ($3 >= 10.0) print $0;}'

這將顯示所有使用超過10%的CPU和記憶體的程序列表,並使用使用者定義的過濾器。

顯示所有程序的樹狀檢視

要顯示所有程序的樹狀檢視,請使用以下命令:

pstree

這將顯示所有程序的分層樹狀檢視,其中父程序位於頂部,子程序位於下方。

結論

“ps”命令是用於監控和管理Linux系統中程序的強大工具。透過本文提供的示例,您可以輕鬆使用“ps”命令檢視有關正在執行的程序的資訊,過濾和排序輸出,以及執行各種其他操作。透過掌握“ps”命令,您可以提高Linux系統的效能和穩定性,並更有效地解決問題。

更新於: 2023年3月28日

2K+ 次瀏覽

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告
© . All rights reserved.