作用:
計劃任務主要是做一些週期性的任務,目前最主要的用途是定期備份數據。
一次性調度執行at
語法格式:at+時間
時間示例:
now +5min
:5分鐘後
teatime tomorrow
(teatime is 16:00):下午茶時間
noon +4 days
:第四天中午
5pm august 3 2020
:2020年8月3日5點
4:00 2019-11-27
:2019年11月27日4點
實例
兩分鐘後創建一個abc用戶
輸入at now +2min
在at>輸入你想執行的命令,輸入完畢按ctrl+d退出。
atq:查詢任務
[root@localhost yum.repos.d]# at now +2min
at> useradd abc
at> <EOT>
job 2 at Thu Feb 27 18:55:00 2020
[root@localhost yum.repos.d]# atq
2 Thu Feb 27 18:55:00 2020 a root
[root@localhost yum.repos.d]# id abc
uid=1003(abc) gid=1004(abc) groups=1004(abc)
循環調度執行 cron
cron的概念和crontab是不可分割的。
crontab是一個命令,常見於Unix和Linux的操作系統之中
用於設置週期性被執行的指令。
該命令從標準輸入設備讀取指令,並將其存放於“crontab”文件中,以供之後讀取和執行。
查看進程狀態
計劃任務執行的根本就是保證crond程序的運行
用systemctl status crond.service
查看
計劃任務存儲位置
[root@localhost ~]# ls /var/spool/cron/
創建計劃
crontab -e
說明
五個 * 分別代表,分 時 日 月 周 ,後面加命令或腳本程序
六個部分用空格隔開,逗號和 - 屬於一部分
示例1
* * * * * /mysql_back.sh:每分鐘都執行
0 2 14 * * /mysql_back.sh:每月14日的2點整執行
0 2 * * * /mysql_back.sh:每日的兩點整執行
0 * * * * /mysql_back.sh:每小時的0分執行
*/5 * * * * /mysql_back.sh:每五分鐘執行
0 2 1,4,6 * * /mysql_back.sh:每月的1,4,6日的2點整執行
0 2 5-9 * * /mysql_back.sh:每月5日到9日的兩點整執行
0 2 14 2 * /mysql_back.sh:2月14日2點整執行
0 2 * * 5 /mysql_back.sh:不寫月日,僅周生效,每月的週五兩點執行
0 2 2 6 5 /mysql_back.sh:書寫月和日,月或日,月日周均生效
6月2日的兩點整執行,6月的週五兩點整執行
查詢計劃
crontab -l
刪除計劃
crontab -r