進程和計劃任務管理
進程和計劃任務列表
1.查看進程
1.1程序和進程的關係
程序:保存在硬盤、光盤等介質中的可執行代碼和數據,是靜態保存的代碼
進程:在CPU及內存中運行的程序代碼,是動態執行的代碼
父、子進程:每個進程可以創建一個或多個進程
1.2靜態查看進程統計信息
ps
ps aux :以簡單列表的形式顯示出進程信息
a:顯示當前終端下的所有進程信息,包括其他用戶的進程
u:使用以用戶爲主的格式輸出進程信息
x:顯示當前用戶在所有終端下的進程信息
ps -elf:以長格式顯示系統中的進程信息,並且包含更豐富的內容
-e:顯示系統內的所有進程信息
-l:使用長(long)格式顯示進程信息
-f:使用完整的(full)格式顯示進程信息
直接執行不帶任何選項的ps命令時,將只顯示當前用戶會話中打開的進程
系統中運行的進程數量多時,可以結合“| grep"選項使用
pgrep
根據特定條件查詢進程PID信息
-l:顯示進程名
-U:指定特定用戶
-t:指定終端
pstree
以樹形結構列出進程信息
-a:顯示完整信息
-u:列出對應用戶名
-p:列出對應PID
1.3 動態查看進程統計信息
top:會在當前終端以全屏交互式的界面顯示進程排名,以及跟蹤包括 CPU,內存等系統資源佔用情況,默認情況下每三秒刷新一次
排序
P:根據CPU佔用情況對進程列表進行排序
M:根據內存佔用情況進行排序
N:根據啓動時間進行排序
h:或者top程序的在線幫助信息
q:退出top程序
k,然後輸入PID號,可以殺死某個進程
1.4 控制進程
進程啓動方式
手動啓動
前臺啓動:用戶輸入命令,直接執行程序
後臺啓動:在命令行尾加入“&”符號
調度啓動
使用at命令,設置一次性計劃任務
腳本名稱:/etc/init.d/atd
設置格式: at [HH:MM] [yyyy-mm-dd]
提交任務:Ctrl+D
查看未執行的任務列表:atq
刪除第二條任務:atrm 2
使用crontab命令,設置週期性計劃任務
按照預先設置的時間週期(分鐘,小時,天...)
服務腳本名稱:/etc/init.d/crond
全局配置文件:/etc/crontab
系統默認的設置,位於目錄:/etc/cron.*
用戶定義的設置:/var/spool/cron/用戶名
管理cron計劃任務
編輯計劃任務:crontab -e [-u 用戶名]
查看計劃任務:crontab -l [-u 用戶名]
刪除計劃任務:crontab -r [-u 用戶名]
crontab任務配置的格式
時間數值的特殊表示方法
* 表示該範圍內的任意時間
,表示間隔的多個不連續時間點
- 表示一個連續的時間範圍
/ 指定間隔的時間頻率
進程的前後臺調度
ctrl+z:將當前進程掛起,及調入後臺並停止執行
jobs:查看處於後臺的任務列表(+表示最近一次放到後臺的任務,-倒數第二個人放到後臺的任務)
fg:將後臺進程恢復到前臺運行,可指定任務序號
bg:後臺暫停的任務恢復運行,指定任務序號
終止進程的運行
ctrl+c:中斷正在執行的命令
kill:用於終止指定PID號的進程
killall:用於終止指定名稱的所有進程
-9:強制終止,內核強制關閉進程(不加此參數默認爲-15,正常退出)
pkill:根據特定條件終止相應的進程
-U:根據進程所屬的用戶名終止相應進程