查看進程
1、ps命令
ps命令查看系統中運行的進程信息,其格式為:
ps [選項]
常用選項:
-a 顯示終端上的所有進程,包括其他用戶的進程。
-u 顯示面向用戶的格式信息。
-x 顯示沒有控制終端的進程。
示例:
ps -aux|grep java
顯示java 進程的所有狀態。
ps命令格式順序輸出的字段名說明:
用戶(USER)、進程號(PID)、CPU使用率(%CPU)、內存使用率(%MEM)、虛擬內存占用情況(VSZ)、物理內存占用情況(RSS)、登錄的終端控制台(TTY,其中“?”表示未知)、
當前進程狀態(STSAT)、進程開始時間(START)、進程運行時間(TIMS)、進程名稱(COMMAND)
當前進程狀態(STSAT)的幾種形態:
R (TASK_RUNNING):可執行狀態。
S (TASK_INTERRUPTIBLE):可中斷睡眠狀態。
D (TASK_UNINTERRUPTIBLE):不可中斷睡眠狀態。
T (TASK_STOPPED or TASK_TRACED):暫停或者跟蹤狀態
Z (TASK_DEAD-EXIT_ZOMBIE):退出狀態,進程成為僵屍進程。
X (TASK_DEAD-EXIT_DEAD):退出狀態,進程即將被銷毀。
結束進程
1、kill命令
kill命令使用進程號來結束指定進程的運行。其用法為:
kill [-9] 進程號
選項“-9”用於強行結束指定的進程,適用於結束已經“死掉”而沒有能力自動結束的非正常進程。
實例:
為了查看指定進程的進程號,可以使用管道操作和grep命令相結合的方式實現。
比如查看xinetd進程對應的進程號:
ps -e|grep xinted
例如,輸出為:
1665 ? 00:00:00 xinted
從其輸出信息中,可得知該進程的進程號為1665。若要結束改進程,則執行命令:
kill 1665
2、killall命令
killall命令使用進程名來結束指定進程的運行。若系統存在同名的多個進程,則這些進程將全部結束運行。
kilall [-9] 進程名
選項“-9”用於強行結束指定進程的運行,屬於非正常結束。
實例,若要結束xinetd進程的運行,則實現命令為:
kilall xinetd
linux中的后台進程
用戶輸入shell命令后,空格加上“&”符號再按Enter就會啟動一個后台進程。此時shell可以繼續運行和處理其他程序命令。