優先使用 ps -efhtml
Linux中的ps命令是Process Status的縮寫。ps命令用來列出系統中當前運行的那些進程。ps命令列出的是當前那些進程的快照,就是執行ps命令的那個時刻的那些進程,若是想要動態的顯示進程信息,就可使用top命令。
要對進程進行監測和控制,首先必需要了解當前進程的狀況,也就是須要查看當前進程,而 ps 命令就是最基本同時也是很是強大的進程查看命令。使用該命令能夠肯定有哪些進程正在運行和運行的狀態、進程是否結束、進程有沒有僵死、哪些進程佔用了過多的資源等等。總之大部分信息都是能夠經過執行該命令獲得的。
ps 爲咱們提供了進程的一次性的查看,它所提供的查看結果並不動態連續的;若是想對進程時間監控,應該用 top 工具。
kill 命令用於殺死進程。
linux上進程有5種狀態:
1. 運行(正在運行或在運行隊列中等待)
2. 中斷(休眠中, 受阻, 在等待某個條件的造成或接受到信號)
3. 不可中斷(收到信號不喚醒和不可運行, 進程必須等待直到有中斷髮生)
4. 僵死(進程已終止, 但進程描述符存在, 直到父進程調用wait4()系統調用後釋放)
5. 中止(進程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信號後中止運行運行)
ps工具標識進程的5種狀態碼:
D 不可中斷 uninterruptible sleep (usually IO)
R 運行 runnable (on run queue)
S 中斷 sleeping
T 中止 traced or stopped
Z 僵死 a defunct (」zombie」) process
具體參數能夠參考man ps或
http://www.cnblogs.com/peida/archive/2012/12/19/2824418.html
這裏重點討論的是ps aux和ps –aux的區別,及ps aux和ps –ef的區別。
1. ps aux和ps –aux
man ps 以後獲得的結果:
ps displays information about a selection of the active processes. If you want a repetitive update of the selection and the displayed information, use top(1) instead.
Note that "ps -aux" is distinct from "ps aux". The POSIX and UNIX standards require that "ps -aux" print all processes owned by a user named "x", as well as printing all processes that would be selected by the -a option. If the user named "x" does not exist, this ps may interpret the command as "ps aux" instead and print a warning.
This behavior is intended to aid in transitioning old scripts and habits. It is fragile, subject to change, and thus should not be relied upon.
意思是:
請注意"ps -aux"不一樣於"ps aux"。POSIX和UNIX的標準要求"ps -aux"打印用戶名爲"x"的用戶的全部進程,以及打印全部將由-a選項選擇的過程。若是用戶名爲"x"不存在,ps的將會解釋爲"ps aux",並且會打印一個警告。這種行爲是爲了幫助轉換舊腳本和習慣。它是脆弱的,即將更改,所以不該依賴。
若是你運行ps -aux >/dev/null,那麼你就會獲得下面這行警告信息
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
綜上: 使用時二者之間直接選擇ps aux
參考:
http://walkerxk.blog.sohu.com/150633165.html
http://blog.chinaunix.net/uid-24701781-id-3343264.html
2. ps aux 和ps -ef
二者的輸出結果差異不大,但展現風格不一樣。aux是BSD風格,-ef是System V風格。這是次要的區別,一個影響使用的區別是aux會截斷command列,而-ef不會。當結合grep時這種區別會影響到結果。
舉例請參考:http://www.2cto.com/os/201303/197697.html
綜上:以上三個命令推薦使用:ps –ef linux