簡述
Linux中的ps命令是Process Status的縮寫。ps命令用來列出系統中當前運行的那些進程。ps命令列出的是當前那些進程的快照,就是執行ps命令的那個時刻的那些進程,動態的顯示進程信息,要使用top命令。
該命令可確定有哪些進程正在運行和運行的狀態、進程是否結束、進程有沒有僵死、哪些進程占用了過多的資源等等。
ps提供進程的一次性的查看,提供的查看結果並不動態連續。如果想對進程時間監控,應該用top工具。
kill命令用於殺死進程。
linux上進程有5種狀態:
- 運行(正在運行或在運行隊列中等待)
- 中斷(休眠中, 受阻, 在等待某個條件的形成或接受到信號)
- 不可中斷(收到信號不喚醒和不可運行, 進程必須等待直到有中斷發生)
- 僵死(進程已終止, 但進程描述符存在, 直到父進程調用wait4()系統調用后釋放)
- 停止(進程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信號后停止運行運行)
命令格式
ps [參數]
命令功能
用來顯示當前進程的狀態
命令參數
$ ps --help ********* simple selection ********* ********* selection by list ********* -A all processes -C by command name -N negate selection -G by real group ID (supports names) -a all w/ tty except session leaders -U by real user ID (supports names) -d all except session leaders -g by session OR by effective group name -e all processes -p by process ID T all processes on this terminal -s processes in the sessions given a all w/ tty, including other users -t by tty g OBSOLETE -- DO NOT USE -u by effective user ID (supports names) r only running processes U processes for specified users x processes w/o controlling ttys t by tty *********** output format ********** *********** long options *********** -o,o user-defined -f full --Group --User --pid --cols --ppid -j,j job control s signal --group --user --sid --rows --info -O,O preloaded -o v virtual memory --cumulative --format --deselect -l,l long u user-oriented --sort --tty --forest --version -F extra full X registers --heading --no-heading --context ********* misc options ********* -V,V show version L list format codes f ASCII art forest -m,m,-L,-T,H threads S children in sum -y change -l format -M,Z security data c true command name -c scheduling class -w,w wide output n numeric WCHAN,UID -H process hierarchy
a 顯示所有進程
-a 顯示同一終端下的所有程序
-A 顯示所有進程
c 顯示進程的真實名稱
-N 反向選擇
-e 等於“-A”
e 顯示環境變量
f 顯示程序間的關系
-H 顯示樹狀結構
r 顯示當前終端的進程
T 顯示當前終端的所有程序
u 指定用戶的所有進程
-au 顯示較詳細的資訊
-aux 顯示所有包含其他使用者的行程
-C <命令> 列出指定命令的狀況
--lines <行數> 每頁顯示的行數
--width <字符數> 每頁顯示的字符數
--help 顯示幫助信息
--version 顯示版本顯示
使用實例
* 其中最常用的就是:
ps -auxf | grep **
顯示所有進程信息
ps -A
顯示指定用戶的信息
ps -u root
顯示所有進程信息,連同命令行
ps -ef
ps與grep常用組合用法,查找特定進程
ps -ef | grep ssh
將目前屬於您自己這次登入的PID與相關信息列出來
ps -l
