Linux進程管理是Linux內核的一種功能。
1.ps命令:process state
SysV風格:每一個選項需要加-
BSD風格:每個選項不需要加-
a:顯示所有與終端有關的進程
u:
x:所有與終端無關的進程
-e:顯示所有進程
-F:額外完全格式
-l:
2. 進程分類:
跟終端相關的進程
跟終端無關的進程
3.進程狀態:
D:不可中斷的睡眠
R: 運行或就緒
S: 可中斷的睡眠
T: 停止
Z: 僵屍
<:高優先級進程
N:低優先級進程
+:前台進程組進程
l:多線程進程
s:會話進程
4.pstree:顯示進程樹
5.pgrep:以grep的風格顯示進程
6.pidof:顯示正在運行的程序的PID
pidof init
pidof sshd
7.top:
M:根據駐留內存大小進行排序
P: 根據CPU使用百分比進行排序
T: 根據累計時間進行排序
l:是否顯示平均負載和啟動時間
t:是否顯示和CPU狀態相關信息
m:是否顯示內存相關信息
c:是否顯示完整的命令行信息
q:推出top
k:終止某個進程
-d:改變刷新延遲時長
-b:以批模式顯示
-n #:批模式只顯示#批
8.重要的信號:
1:SIGHUP:讓一個進程不用重啟就可以重讀配置文件,並讓新的配置信息生效;
2:SIGINT:Ctrl + c,終止
9:SIGKILL:殺死一個進程
15:SIGTERM:終止一個進程(默認信號)
指定一個信號:
信號號碼:kill -1
信號名稱:kill -SIGKILL
信號名稱簡寫:kill -KILL
9.killall COMMAND:殺死所有名為COMMAND的進程
10.調整nice值:
調整已經啟動進程的nice值:
renice NI PID
啟動時指定nice值:
nice -n NI COMMAND
11.vmstat:系統狀態查看命令
12.前台–>後台:
Ctrl + z
COMMAND &
bg:讓後台的停止作業繼續運行
jobs:查看後台的所有作業
作業好,不同於進程號
+:命令將默認操作的作業
-:命令將第二個默認操作的作業
fg:將後台作業重新調回前台
fg [[%]jobid],中間的%可以省略,但是如果是使用在kill命令上,則%號不可省略,以為默認的為終止相應的進程,如:
kill 2 表示殺死PID為2的進程,而不是結束作業號為2的作業。