1.jobs [-lrs]:觀察目前的背景中的工作狀态,參數,
-l:除了列出job number與指令串之外,同時列出PID的号碼
-r:進列出正在背景run的工作
-s:僅列出正在背景中暫停的工作
指令執行後的+号表示最近最後被放到背景的工作号碼,-代表最後第二個放置到背景中的工作号碼。而超過第三個以後的工作就不再有+/-号了。
2.fg %jobnumber:将背景中的工作拿到前景來處理,參數:
1)%jobnumber為工作号碼(數字),這個%是可有可無的,如果不加任何參數,則表示将+(最近最後)的那個背景工作拿到前景中來執行,fg -代表将-那個工作号碼拿出來到前景中取運作。
3.bg:讓工作在背景中的指令由暫停狀态運作狀态(ctr+z可使程式在背景中暫停),參數同fg。
4.kill -signal %jobnumber;kill -l:管理背景中的工作,參數,
1)-l:列出目前kill能夠使用的訊号
2)signal:代表給予後面接的那個工作什麼樣的訓示,用man 7 signal可知:
-1:重新讀取一次參數的配置檔案
-2:代表由鍵盤輸入ctr+c同樣的動作
-9:立刻強制删除一個工作
-15:以正常的程式方式終止一項工作
5.背景是指終端機模式下,可以避免ctr+c中斷的一個情景,并不是放到系統的背景去,是以工作管理的背景依舊與終端機有關,在這樣的情況下,如果是以遠端聯機的方式連接配接的linux主機,并且将工作以&方式放到背景中處理,工作尚未結束的情況下脫機,該工作不會繼續進行了,就會到此終止掉。
6.nohup [指令與參數]:在終端機前景中工作;nohup [指令與參數] &在終端機背景中去工作。需要注意的是nohup并不支援bash的内建指令,是以你的指令必須是外部指令才行。
7.ps :将某個時間點的程式運作情況撷取下來,幾個常用的組合,
1)ps aux:觀察所有的程式資料
2)ps -IA:觀察所有的系統資料
3)ps axjf:連同分程式樹狀态
4)ps -l:隻查閱自己bash的程式
各個分參數:
1)-A:所有的process均顯示出來,與-e具有同樣的效用
2)-a:不與terminal有關的所有process
3)-u:有效使用者相關的process
4)x:通常與a一起用,可以列出較完整的資訊
輸出格式規劃:
5)l:較長,較詳細的将該PID的資訊列出
6)j:工作格式
7)-f:做一個更為完整的輸出
ps -l:中各項參數的意義:
F:代表這個程式的辨別(flag),常見的有:
4:表示這個程式的權限為root
1:表示此子程式僅進行fork而沒有實際執行exec
S:代表這個程式的狀态,主要的狀态有:
R:該程式正在運作中
S:改程式目前處于睡眠狀态,但可以被喚醒
D:不可被喚醒的睡眠狀态,通常這隻程式在等待IO的情況
T:停止狀态,可能是在工作控制(背景暫停)或除錯狀态
Z:僵屍狀态,程式已經終止但無法被移除至記憶體外
W: 沒有足夠的記憶體分頁可配置設定
<: 高優先級的行程
N: 低優先級的行程
L: 有記憶體配置設定并鎖在記憶體内
UID/PID/PPID:代表此程式被該UID所擁有的/程式的PID号碼/此程式的PID号碼
C:代表CPU使用率,機關為百分比
PRI/NI:priority/nice的縮寫,代表此程式被CPU所執行的優先級,數值越小代表該程式越快被CPU執行
ADDR/SZ/WCHAN:都與記憶體由關,ADDR是kernel function,指出該程式在記憶體的哪個部分,如果是running的程式,一般會顯示-,/SZ代表此程式的用掉了多少記憶體/WCCHAN表示目前程式是否在運作中
,同樣若為-表示運作中
TTY:登入者的終端機位置,若為遠端登入則使用動态終端接口(pts/n)
TIME:使用掉的CPU時間,是此程式實際花掉的cpu時間,而不是系統時間
CMD:指令
ps aux中各項參數的含義,
USER:該process屬于哪個使用者賬号
PID:程序ID
%CPU:CPU使用率
%MEM:占用記憶體的百分比
VSZ:該process使用掉的虛拟記憶體(Kbytes)
RSS:該process占用的固定記憶體(Kbytes)
TTY:該程式跑的終端裝置,tty1-6是本機的,ps/0等,表示由網絡連接配接進主機的程式
STAT:該程式目前的狀态
START:該process被觸發啟動的時間
TIME:該process實際使用的CPU時間