您好,登錄后才能下訂單哦!
linux中進程和計劃任務管理
1.?程序和進程的關系
程序:保存在硬盤、光盤等介質中的可執行代碼和數據;靜態保存的代碼
進程:在 CPU 及內存中運行的程序代碼;動態執行的代碼;父、子進程:每個進程可以創建一個或多個進程
基本命令
1):ps命令(processes statistc):查看靜態的進程統計信息
ps? -aux :以簡單列表的形式顯示出進程信息。
a 選項表示查看所有進程信息
u 選項表示顯示進程所屬的用戶信息
x 選項表示顯示默認信息以外的信息?
ps? -elf :以長格式顯示出系統中的進程信息,并且包含更豐富的內容。
e參數代表全部進程
f參數代表全格式
l參數代表長格式顯示
PID:運行著的進程的ID;
TTY:命令所運行的位置
TIME:運行著的該命令所占用的CPU處理時間
CMD:該進程所運行的命令
2):top命令:以全屏交互式的界面顯示進程排名,默認情況三秒刷新一次,默認以cup占用率排序。
常用選項:-d:指定刷新的時間,單位秒
? ? ? ? ? ? ? ? ? -b:以批量處理模式操作,一般與-n同時使用
? ? ? ? ? ? ? ? ? -n:指定循壞顯示的次數
? ? ? ? ? ? ? ? ? -u:指定用戶名
? ? ? ? ? ? ? ? ? -p:制定進程號
PID:進程ID
USER:運行進程的用戶
PR:系統默認的優先級,PR總是比NI大20
NI:用戶可以修改的優先級。范圍從-20~19 ,數字越小值越大。當進程已經運行時,可以使用 renice 命令修改其優先級:renice? -n? ?-20? PID? ?。當進程沒運行時,可以使用 nice -n 20? httpd? 開啟進程的時候指定優先級
VIRT:虛擬內存
RES: 當前進程使用的內存
SHR:共享內存
S : 狀態 S(sleep) 或者 R(running)
%CPU:進程所占CPU的比重
%MEM: 進程所占內存的比重
Time : 進程運行的時間
COMMAND: 進程的指令
S狀態的分類:
S(大寫):可中斷休眠進程
D:不可中斷休眠進程
s:父進程
<:優先級高
R:正在運行的進程
l:多線性進程
N:優先級低
Z:僵尸進程
+:前臺進程
注意:cpu占用率過高時,不應直接用top查看,可以將信息存入一個文件內查看,以免cup占用率過高導致崩潰。
3):pgrep命令:根據特定條件查詢進程 PID 信息
常用選項:
-l:顯示進程名
-U:指定特定用戶
-t:指定終端
4):pstree命令:以樹形結構列出進程信息
常用選項:
-a:顯示完整信息
-u:列出對應的用戶名
-p:列出對應的PID號
格式:pstree –aup?;pstree –ap?用戶
?
2.進程的啟動方式
手工啟動
前臺啟動(foreground,前臺):用戶輸入命令,直接執行程序
后臺啟動(background,后臺):在命令行尾加入“&”符號
[root@localhost ~]#?cp /dev/cdrom mycd.iso &
[1] 28454 (輸出信息中包括后臺任務序號、PID號)
?調度啟動
使用 at 命令,設置一次性計劃任務;
使用 crontab 命令,設置周期性計劃任務
?
3.進程的前后臺調度
1):Ctrl+Z?組合鍵:將當前進程掛起,即調入后臺并停止執行
2):jobs?命令:查看處于后臺的任務列表 ;格式:jobs -l
3):fg?命令:將后臺進程恢復到前臺運行,可指定任務序號
4):bg命令:將后臺掛起的進程繼續在后臺執行?
?
4.終止進程
Ctrl+C?組合鍵:中斷正在執行的命令
?kill、killall?命令
kill用于終止指定PID號的進程
killall用于終止指定名稱的所有進程
-9 選項用于強制終止
???pkill命令:根據特定條件終止相應的進程
常用命令選項:
?-U:根據進程所屬的用戶名終止相應進程;
-t:根據進程所在的終端終止相應進程
?
5.計劃任務管理
?1):at命令:一次性計劃任務,前提是對應的系統服務atd必須已經運行;計劃任務執行任務的時間必須安排在當前系統時間后。
服務腳本名稱:/etc/init.d/atd;格式:at? [HH:MM]? [yyyy-mm-dd]
使用at命令,設置一次性任務計劃
設置格式:at 小時:分鐘 ?? 年-月-日??? (設置當天的任務不可加日期)
基本操作 :
ctrl+D 保存退出
atq 查詢現有的一次性計劃
?atrm [任務序號] 刪除第幾項任務
2):crontab命令:按照預先設置的時間周期(分鐘、小時、天……)重復執行用戶指定的命令操作;屬于周期性計劃任務;服務腳本名稱:/etc/init.d/crond
主要設置文件
全局配置文件,位于文件:/etc/crontab
系統默認的設置,位于目錄:/etc/cron.*/
用戶定義的設置,位于文件:/var/spool/cron/用戶名
3):管理cron計劃任務
編輯計劃任務:crontab? -e? [-u??用戶名]
查看計劃任務:crontab? -I? [-u??用戶名
刪除計劃任務:crontab? -r? [-u??用戶名]? ? (刪除時會將所有計劃性任務刪除,如果要刪除其中一條任務,需要用crontab -e 進入配置文件,用dd將要刪除的任務刪除即可)
注意:root用戶可以管理指定用戶的計劃任務;普通用戶只能管理自己的計劃任務
?
?
6.?時間數值的特殊表示方法
*?????? ?? 表示該范圍內的任意時間
,??? ???表示間隔的多個不連續時間點
-??????? ?? 表示一個連續的時間范圍
/??????? ?? 指定間隔的時間頻率
舉個例子
0? 17? *? *? 1-5????????? 周一到周五每天17:00
30? 8? *? *? 1,3,5?????? 每周一、三、五的8點30分
0? 8-18/2? *? *? *????? 8點到18點之間每2小時
0? *? */3? *? *??????????? 每3天
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。