Linux用戶自定義at、cron計(jì)劃任務(wù)執(zhí)行的方法
Linux系統(tǒng)中有兩種計(jì)劃任務(wù),一種是只會執(zhí)行一次 at 計(jì)劃任務(wù),一種是可以周期性地執(zhí)行的 cron 計(jì)劃任務(wù)
at 一次性計(jì)劃任務(wù)
描述
在指定的時(shí)間執(zhí)行特定命令(單次),也稱為延時(shí)動(dòng)作任務(wù)。
用法
at 時(shí)間 [回車]
參數(shù)
at -l #列出單次計(jì)劃任務(wù) at -r 任務(wù)id ##刪除此id的任務(wù) at -d 任務(wù)id ##刪除此id的任務(wù) at -m #讓無輸出的命令產(chǎn)生郵件 at -M #讓有輸出的命令產(chǎn)生郵件 at -c 任務(wù)id ##產(chǎn)看此id任務(wù)的動(dòng)作 at -f 文件 ##用文件內(nèi)記錄的命令作為延時(shí)任務(wù)的執(zhí)行命令
實(shí)例
首先查看系統(tǒng)時(shí)間
[root@test ~]# date Thu May 17 18:40:11 CST 2018
指定單次計(jì)劃任務(wù)(延時(shí)動(dòng)作)
[root@test ~]# at 18:45 ##在當(dāng)天18:45執(zhí)行的計(jì)劃(18:45 2018-05-17) at> date ##計(jì)劃任務(wù)內(nèi)容 at> shutdown -h now ##計(jì)劃任務(wù)內(nèi)容 at> <EOT> ##命令輸入結(jié)束,按Ctrl+D退出 job 10 at Thu May 17 18:45:00 2018 ##系統(tǒng)提示有編號為10的計(jì)劃任務(wù)
cron周期性計(jì)劃任務(wù)
使用 cron 制訂計(jì)劃任務(wù),需要確保crond服務(wù)開啟且為開機(jī)自啟。
# systemctl start crond # systemctl enable crond
描述
為每個(gè)用戶維護(hù)周期性的計(jì)劃任務(wù)文件。
用法
crontab [ -u 用戶 ] [ -l|-r|-e ]
選項(xiàng)
| 參數(shù) | 用法 |
|---|---|
| -u | 指定計(jì)劃任務(wù)的用戶,不加-u則默認(rèn)為當(dāng)前用戶 |
| -l | 查看計(jì)劃任務(wù) |
| -r | 刪除計(jì)劃任務(wù) |
| -e | 編輯計(jì)劃任務(wù) |
| -i | 使用-r刪除計(jì)劃任務(wù)時(shí),要求用戶確認(rèn)刪除 |
corn計(jì)劃任務(wù)格式
| 第一項(xiàng) | 第二項(xiàng) | 第三項(xiàng) | 第四項(xiàng) | 第五項(xiàng) | 第六項(xiàng) |
|---|---|---|---|---|---|
| 分 | 時(shí) | 日 | 月 | 周 | 命令 |
| 00~59 | 00~23 | 1~31 | 1~12 | 1~7 | action |
如果需要指定時(shí)間段,可以使用橫杠(-)表示一段連續(xù)的時(shí)間,使用逗號(,)表示若干個(gè)不連續(xù)的時(shí)間,使用星號(*)表示所有的時(shí)間,使用除號(/)表示間隔時(shí)間。
示例
[root@test ~]# crontab -e 00 20 * * * rm -fr /tmp/* ##每天20:00刪除/tmp中的所有內(nèi)容 00 20 1,5 * * rm -fr /tmp/* ##每月1號和5號的20:00,刪除/tmp中的所有內(nèi)容 00 20 1-5 * * rm -fr /tmp/* ##每月1號到5號的20:00,刪除/tmp中的所有內(nèi)容 00 20 1,5 3 * rm -fr /tmp/* ##3月1號和5號的20:00,刪除/tmp中的所有內(nèi)容 00 20 1,5 3 3 rm -fr /tmp/* ##3月1號和5號以及3月的所有周三的20:00,刪除/tmp中的所有內(nèi)容 58 20-21 * * * rm -fr /tmp/* ##每天20-21點(diǎn),每個(gè)小時(shí)的58分,刪除/tmp中的所有內(nèi)容 */30 20-21 * * 1-5 rm -fr /tmp/* ##周一到周五的20點(diǎn)到21點(diǎn),每隔半小時(shí),刪除/tmp中的所有內(nèi)容 00 */3 * * * who ##每3小時(shí)的整點(diǎn)檢查用戶登錄情況
cron計(jì)劃任務(wù)權(quán)限
為了控制用戶隨意定義自己的計(jì)劃任務(wù),管理員可以進(jìn)行 ACL 訪問控制。at 計(jì)劃任務(wù)的控制文件分別是/etc/at.allow和/etc/at.deny,默認(rèn)at.llow不存在。cron計(jì)劃任務(wù)的控制文件分別為/etc/cron.allow和/etc/cron.deny,默認(rèn)cron.allow不存在。
以上這篇Linux用戶自定義at、cron計(jì)劃任務(wù)執(zhí)行的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Linux之進(jìn)程狀態(tài)&&進(jìn)程優(yōu)先級詳解
文章介紹了操作系統(tǒng)中進(jìn)程的狀態(tài),包括運(yùn)行狀態(tài)、阻塞狀態(tài)和掛起狀態(tài),并詳細(xì)解釋了Linux下進(jìn)程的具體狀態(tài)及其管理,此外,文章還討論了進(jìn)程的優(yōu)先級、查看和修改進(jìn)程優(yōu)先級的方法,以及并發(fā)相關(guān)的概念和函數(shù)的返回值2025-02-02
Linux CentOS使用crontab設(shè)置定時(shí)重啟的方法
本篇介紹 crontab 設(shè)置定時(shí)任務(wù),并且把 crontab 加入到開機(jī)自啟動(dòng)中,感興趣的朋友跟隨腳本之家小編一起看看吧2018-08-08
linux系統(tǒng)下使用tcpdump進(jìn)行抓包方法
在本篇文章中小編給大家分享了關(guān)于linux系統(tǒng)下使用tcpdump進(jìn)行抓包的方法和相關(guān)知識點(diǎn),需要的朋友們學(xué)習(xí)下。2019-04-04
eclipse3.2.2 + MyEclipse5.5 + Tomcat5.5.27 配置數(shù)據(jù)庫連接池
首先有一點(diǎn)要明確, 我是個(gè)新手, 而我所知道的只是一個(gè)表面, 根源我并不了解, 目前也不打算去深究. 所以我的方法, 可能只適用于eclipse3.2.2 + MyEclipse5.5 + Tomcat5.5.27 的數(shù)據(jù)庫連接池的配置, 其他版本我無法保證.至少Tomcat 6的admin包還沒出, 所以我的方法肯定不適用于Tomcat 6.2008-10-10
Linux強(qiáng)制釋放占用端口以及Linux防火墻端口開放方法詳解
在linux系統(tǒng)中安裝一些軟件時(shí)有時(shí)遇到端口被占用的情況,本文為大家介紹了遇到這種情況我們應(yīng)該怎么處理2018-10-10

