您好,登錄后才能下訂單哦!
這篇文章主要介紹Linux中用戶如何執行自定義at、cron計劃任務,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
Linux系統中有兩種計劃任務,一種是只會執行一次 at 計劃任務,一種是可以周期性地執行的 cron 計劃任務
at 一次性計劃任務
描述
在指定的時間執行特定命令(單次),也稱為延時動作任務。
用法
at 時間 [回車]
參數
at -l #列出單次計劃任務 at -r 任務id ##刪除此id的任務 at -d 任務id ##刪除此id的任務 at -m #讓無輸出的命令產生郵件 at -M #讓有輸出的命令產生郵件 at -c 任務id ##產看此id任務的動作 at -f 文件 ##用文件內記錄的命令作為延時任務的執行命令
實例
首先查看系統時間
[root@test ~]# date Thu May 17 18:40:11 CST 2018
指定單次計劃任務(延時動作)
[root@test ~]# at 18:45 ##在當天18:45執行的計劃(18:45 2018-05-17) at> date ##計劃任務內容 at> shutdown -h now ##計劃任務內容 at> <EOT> ##命令輸入結束,按Ctrl+D退出 job 10 at Thu May 17 18:45:00 2018 ##系統提示有編號為10的計劃任務
cron周期性計劃任務
使用 cron 制訂計劃任務,需要確保crond服務開啟且為開機自啟。
# systemctl start crond # systemctl enable crond
描述
為每個用戶維護周期性的計劃任務文件。
用法
crontab [ -u 用戶 ] [ -l|-r|-e ]
選項
參數 | 用法 |
---|---|
-u | 指定計劃任務的用戶,不加-u則默認為當前用戶 |
-l | 查看計劃任務 |
-r | 刪除計劃任務 |
-e | 編輯計劃任務 |
-i | 使用-r刪除計劃任務時,要求用戶確認刪除 |
corn計劃任務格式
第一項 | 第二項 | 第三項 | 第四項 | 第五項 | 第六項 |
---|---|---|---|---|---|
分 | 時 | 日 | 月 | 周 | 命令 |
00~59 | 00~23 | 1~31 | 1~12 | 1~7 | action |
如果需要指定時間段,可以使用橫杠(-)表示一段連續的時間,使用逗號(,)表示若干個不連續的時間,使用星號(*)表示所有的時間,使用除號(/)表示間隔時間。
示例
[root@test ~]# crontab -e 00 20 * * * rm -fr /tmp/* ##每天20:00刪除/tmp中的所有內容 00 20 1,5 * * rm -fr /tmp/* ##每月1號和5號的20:00,刪除/tmp中的所有內容 00 20 1-5 * * rm -fr /tmp/* ##每月1號到5號的20:00,刪除/tmp中的所有內容 00 20 1,5 3 * rm -fr /tmp/* ##3月1號和5號的20:00,刪除/tmp中的所有內容 00 20 1,5 3 3 rm -fr /tmp/* ##3月1號和5號以及3月的所有周三的20:00,刪除/tmp中的所有內容 58 20-21 * * * rm -fr /tmp/* ##每天20-21點,每個小時的58分,刪除/tmp中的所有內容 */30 20-21 * * 1-5 rm -fr /tmp/* ##周一到周五的20點到21點,每隔半小時,刪除/tmp中的所有內容 00 */3 * * * who ##每3小時的整點檢查用戶登錄情況
cron計劃任務權限
為了控制用戶隨意定義自己的計劃任務,管理員可以進行 ACL 訪問控制。at 計劃任務的控制文件分別是/etc/at.allow和/etc/at.deny,默認at.llow不存在。cron計劃任務的控制文件分別為/etc/cron.allow和/etc/cron.deny,默認cron.allow不存在。
以上是“Linux中用戶如何執行自定義at、cron計劃任務”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。