《LINUX學(xué)習(xí):Linux進(jìn)程控制和計劃任務(wù)管理》要點(diǎn):
本文介紹了LINUX學(xué)習(xí):Linux進(jìn)程控制和計劃任務(wù)管理,希望對您有用。如果有疑問,可以聯(lián)系我們。
程序是保留在外部存儲介質(zhì)(如硬盤)中的可執(zhí)行機(jī)器代碼和數(shù)據(jù)的靜態(tài)集合,而進(jìn)程是在CPU及內(nèi)存中處于動態(tài)執(zhí)行狀態(tài)的計算機(jī)程序.在Linux中,每個程序啟動后可以創(chuàng)建一個或多個進(jìn)程.
ps命令? 查看靜態(tài)的進(jìn)程統(tǒng)計信息
ps? ? ? ? 只顯示當(dāng)前用戶會話中打開的進(jìn)程
ps? aux? ? 以簡單列表的形式顯示出進(jìn)程信息
ps? -elf? 以長格式顯示系統(tǒng)中的進(jìn)程信息,包含更豐富的內(nèi)容
top命令? 查看進(jìn)程動態(tài)信息
? 在當(dāng)前終端已交互式的界面顯示進(jìn)程排名,及時跟蹤C(jī)PU、內(nèi)存等系統(tǒng)資源占用的情況,默認(rèn)每三秒刷新一次
P鍵:根據(jù)CPU占用情況對進(jìn)程進(jìn)行排序
M鍵:根據(jù)內(nèi)存占用情況對進(jìn)程進(jìn)行排序
N鍵:根據(jù)啟動時間進(jìn)行排序
h鍵:獲得top程序的在線贊助信息
q鍵:退出top程序
k鍵:輸入指定進(jìn)程PID號,按下Enter鍵,終止對應(yīng)的進(jìn)程
pgrep命令? ? 查詢指定過程信息
? -l? 同時顯示PID和對應(yīng)的過程名
? -U? 查詢特定用戶的過程
? -t? 查詢在特定終端運(yùn)行的過程(如tty1)
pstree命令? ? 查看進(jìn)程樹形結(jié)構(gòu),各進(jìn)程對應(yīng)的關(guān)系
? -aup? 查看當(dāng)前進(jìn)程樹,并包含進(jìn)程對應(yīng)的PID號、用戶名、完整命令信息
? -ap 用戶名參數(shù)? 只查看指定用戶的進(jìn)程樹結(jié)構(gòu)
控制進(jìn)程
命令+&? 在后臺運(yùn)行命令,不占用前臺的命令操作界面
Ctrl+Z? 將當(dāng)前進(jìn)程掛起,調(diào)入后臺并停止執(zhí)行
jobs? 查看后臺運(yùn)行的進(jìn)程任務(wù)
? -l? 同時顯示該進(jìn)程對應(yīng)的PID號
bg+PID號? ? 將后臺暫停執(zhí)行的任務(wù)恢復(fù)運(yùn)行,繼續(xù)在后臺運(yùn)行
fg+PID號? ? 將后臺暫停執(zhí)行的任務(wù)恢復(fù)到前臺運(yùn)行
?
終止進(jìn)程執(zhí)行
Ctrl+C? 強(qiáng)制中斷正在前臺執(zhí)行的某個進(jìn)程
kill+PID號? ? 終止進(jìn)程并正常退出
? -9? ? ? 強(qiáng)制終止某個進(jìn)程
killall+進(jìn)程名? ? 終止系統(tǒng)中多個相同名稱的進(jìn)程,更加便利、效率
? -9? ? 強(qiáng)行終止
pkill命令? ? 可以根據(jù)進(jìn)程的名稱、用戶、終端等屬性終止特定的進(jìn)程
? -U? 終止特定用戶的進(jìn)程
? -t? 終止在特定終端運(yùn)行的進(jìn)程(如tty1)
計劃任務(wù)管理
? 在Linux操作系統(tǒng)中,還可以配置在指定時間,指定日期執(zhí)行預(yù)先計劃好的系統(tǒng)管理任務(wù)(如按期備份、按期采集監(jiān)測數(shù)據(jù))
at 一次性任務(wù)設(shè)置
? 配置文件? /etc/init.d/atd
? 命令格式: at? 時間? 日期
? 例如:在2017年8月15日的20:00是自動關(guān)閉系統(tǒng)
? ? # at? 20:00? 2017-8-15? ? ? ? ? ? ? ?
?at> shutdown? -h? now? ? ? ? ? ? ? ? ? ?
?at>? 設(shè)置完后按 Ctrl+D 提交任務(wù)? ? ? ? ?
atq命令? 查詢已設(shè)置但還未執(zhí)行的計劃任務(wù)
atrm命令? 刪除指定編號的 at 任務(wù),刪除后將不會執(zhí)行
crontab 周期性任務(wù)設(shè)置
? 配置文件? /etc/crontab
? 用戶 cron 任務(wù)配置文件存放目錄? /var/spool/cron
? 命令格式: crontab? -e? 編輯計劃任務(wù)列表
? ? ? ? ? ? ? ? ? ? ? -u? 指定管理的計劃任務(wù)屬于哪個用戶,默認(rèn)自己
? ? ? ? ? ? ? ? ? ? ? -l? 列表顯示任務(wù)計劃
? ? ? ? ? ? ? ? ? ? ? -r? 刪除計劃任務(wù)列表
1.編輯計劃任務(wù)列表
? 執(zhí)行crontab? -e 后,打開計劃任務(wù)編輯界面
? 編輯格式:? 分鐘? 小時? 日期? 月份? 星期? 執(zhí)行的命令
? * 表示取值范圍中的任意時間
? - 表示一個連續(xù)的時間范圍,如“1-3”表示1、2、3
? ,表示一個間隔的不連續(xù)范圍,如“1,5”表示1,5
? / 表示指定的間隔頻率,如在小時字段中的“*/12”表示每個12小時
? ? 例如:依照固定的周期重復(fù)執(zhí)行以下系統(tǒng)管理任務(wù),任務(wù)內(nèi)容如下
? 1.每天早上7:50自動開啟sshd服務(wù),22點(diǎn)50時封閉
? 2.每隔5天清空一次FTP服務(wù)器公共目錄/var/ftp/pub
? 3.每周六的7:30時,重新啟動httpd服務(wù)
? 4.每周一、三、五的17:30時,打包備份/etc/httpd目錄
? # crontab -e? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? 50? 7? *? *? *? /sbin/service? sshd? start? ? ? ? ? ? ? ? ? ? ?
? ? 50? 22? *? *? *? /sbin/service? sshd? stop? ? ? ? ? ? ? ? ? ? ?
? ? 0? 0? */5? *? *? /bin/rm? -rf? /var/ftp/pub/*? ? ? ? ? ? ? ? ? ?
? ? 30? 7? *? *? 6? /sbin/service? httpd? restart? ? ? ? ? ? ? ? ? ?
? ? 30? 17? *? *? 1,3,5? /bin/tar? zcf? httpd.tar.gz? /etc/httpd/? ?
2.查看任務(wù)列表
? crontab? -l? 查看當(dāng)前用戶的方案任務(wù)列表
? ? ? ? -u? 查看其它用戶的方案任務(wù)
? 例如:查看用戶 ysf 的方案任務(wù)
? # crontab? -l? -u? ysf? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
3.刪除用戶的計劃任務(wù)列表
? 當(dāng)只需刪除某一條計劃任務(wù)時,可通過 crontab -e 進(jìn)行編輯;必要清空某個用戶的所有計劃任務(wù)時,可以執(zhí)行 crontab -r 命令
? 例如:查看用戶 ysf 的計劃任務(wù)
? ? # crontab? -r? -u? ysf? ? ?
本文永遠(yuǎn)更新鏈接地址:
學(xué)習(xí)更多LINUX教程,請查看站內(nèi)專欄,如果有LINUX疑問,可以加QQ交流《LINUX學(xué)習(xí):Linux進(jìn)程控制和計劃任務(wù)管理》。
轉(zhuǎn)載請注明本頁網(wǎng)址:
http://www.snjht.com/jiaocheng/9331.html