天天看點

程序和計劃任務管理

程式和程序的關系

程式

儲存在硬碟、CD光牒等媒體中的可執行代碼和資料

是靜态儲存的代碼

程序

在CPU及記憶體中運作的程式代碼

是動态執行的代碼

父、子程序:每個程序可以建立一個或多個程序

檢視程序資訊指令

ps指令

用途:檢視靜态的程序統計資訊

格式:

ps aux

ps -elf

top指令

用途:檢視動态的程序排名資訊

top工具的指令按鍵:

按P鍵根據CPU占用情況對程序清單進行排序

按M鍵根據記憶體占用情況進行排序

按N鍵根據啟動時間進行排序

按h鍵可以獲得top程式的線上幫助資訊

按q鍵可以正常退出top程式

使用空格鍵可以強制更新程序狀态顯示

pgrep指令

用途:根據特定條件查詢程序PID資訊

常用指令選項:

-l:顯示程序名

-U:指定特定使用者

-t:指定終端

pstree指令

用途:以樹狀圖顯示程式

-a:顯示完整資訊

-u:列出對應使用者名

-p:列出對應PID号

程序的啟動方式

手工啟動

前台啟動:使用者輸入指令,直接執行程式

背景啟動:在指令行尾加入“&”符号

排程啟動

使用at指令,設定一次性計劃任務

使用crontab指令,設定周期性計劃任務

程序的前背景排程

Ctrl+Z 組合鍵

将目前程序挂起,即調入背景并停止執行

jobs指令

檢視處于背景的任務清單

fg指令

将處于背景的程序恢複到前台運作,需指定任務序号

終止程序的運作

Ctrl+C組合鍵

中斷正在執行的指令

kill、killall指令

kill用于終止指定PID号的程序

killall用于終止指定名稱的所有程序

-9 選項用于強制終止

pkill指令

用途:根據特定條件終止相應的程序

-U:根據程序所屬的使用者名終止相應程序

-t:根據程序所在的終端終止相應程序

計劃任務管理

at指令

一次性計劃任務

服務腳本名稱:/etc/init.d/atd

設定格式:at [HH:MM] [yyyy-mm-dd]

at應用示例:

把目前以root使用者身份運作的程序數量輸出到/tmp/ps.root檔案中

程式和計劃任務管理

crontab指令

按照預先設定的時間周期(分鐘、小時、天……)重複執行使用者指定的指令操作,屬于周期性計劃任務

服務腳本名稱:/etc/init.d/crond

主要設定檔案

全局配置檔案,位于檔案:/etc/crontab

系統預設的設定,位于目錄:/etc/cron.*/

使用者定義的設定,位于檔案:/var/spool/cron/使用者名

管理cron計劃任務

編輯計劃任務:crontab -e [-u 使用者名]

檢視計劃任務:crontab -l [-u 使用者名]

删除計劃任務:crontab -r [-u 使用者名]

crontab任務配置的格式

5 4 3 2 1 run_command

分鐘 小時 日期 月份 星期 指令

字段

說明

分鐘

取值為從0到59之間的任意整數

小時

取值為從0到23之間的任意整數

日期

取值為從1到31之間的任意整數

月份

取值為從1到12之間的任意整數

星期

取值為從0到7之間的任意整數,0或7代表星期日

指令

要執行的指令或程式腳本

時間數值的特殊表示方法

* 表示該範圍内的任意時間

, 表示間隔的多個不連續時間點

- 表示一個連續的時間範圍

/ 指定間隔的時間頻率

應用示例

0 17 * * 1-5 周一到周五每天17:00

30 8 * * 1,3,5 每周一、三、五的8點30分

0 8-18/2 * * * 8點到18點之間每隔2小時

0 * */3 * * 每隔3天

crontab應用示例(root使用者):

每天早上7:50自動開啟sshd服務,22點50時關閉

每隔5天清空一次FTP伺服器公共目錄/var/ftp/pub

每周六的7:30時,重新啟動httpd服務

每周一、三、五的17:30時,打包備份/etc/httpd目錄

程式和計劃任務管理

繼續閱讀