时间:2016年12月10日 | 作者 : liuhui | 分类 : Linux | 浏览: 7031次 | 评论 0 人
阿里云限量代金券 | 此广告位出租25元/月 |
使用at定义一次性的计划任务
sudo systemctl is-enabled atd.service
sudo systemctl status atd.service
计划任务文件路径 /var/spool/at/
定义时间:
now +5min #五分钟后
teatime tomorrow #明天下午四点(下午茶时间23333)
noon +4 days # 四天后的中午
5pm august 3 2016 # 2016年8月3号的下午5点
07190937 #7月19日9点37分
编辑任务:
at -t 07190937
at> wall "can you see me ?" #wall是发广播的意思
at> <EOT> #ctrl + d
atq #查看定制了哪些计划任务
at -c <任务编号>
定义任务队列:a-z , A-Z ,更大的字母执行优先级更高(字母靠后)
a队列默认给at,b队列默认给batch(当系统负载小于0.8的时候自动执行)
at -q g teatime tomorrow #指定计划任务为g队列
at -q b 16:05 tomorrow #指定计划任务为b队列
PS:batch也是计划任务,不同与at,他不指定具体时间,只是在系统不繁忙的时候执行计划任务,即系统负载<0.8(uptime查看系统负载)
at -t 07190950 -f /path/to/app.sh #执行指定脚本
atrm <任务模块> #删除指定的计划任务
at 命令配合 管道符使用
echo "date > ~/myjob" | at now +5min
使用crond指定周期性的计划任务:在指定时间重复执行:
确保服务开机自启动,并且当前为运行状态
systemctl is-enabled crond
systemctl status crond
systemctl enable crond
systemctl start crond
cron计划任务保存路径/var/spool/cron/...
使用 crontab 设定计划任务
crontab -e #编辑计划任务
* * * * * date >> ~/myjob.txt #~代表家目录,此命令代表每分钟执行一次
*/5 * * * * date #每五分钟执行一次
0 13 * * * date #每天下午13点整执行
30 02 1,15 * * date #每个月1号和15号2点30执行一次
五个*分别代表:min hour day month week(星期)
其他语法:
*/2 #每2分钟/小时/月...
1,2,5 #1,2,5分钟/小时/月...
1-14 #从1到14
1-10,11-14 #从1到10和从11到14
时间的取值范围:
分钟:0-59
小时:0-23
天: 0-30/31
月: 1-12
星期: 0-7 0、7都代表星期日
5/* 2 */3 * * date #不管星期几,每月每隔3天的凌晨2点,每隔5分钟执行1次
crontab -l #查看计划任务
crontab -l -u student #查看指定用户的计划任务
crontab -r # 删除当前用户的所有计划任务
禁止用户开启计划任务:
vim /etc/cron.deny
student #每行写一个
允许用户开启计划任务(默认没有设置):、
vim /etc/cron.allow
PS:如果改文件存在那么.deny文件就会失效
设置全局配置计划任务:
vim /etc/crontab
* * * * * <user_name,*匹配所有用户> date
http://junjiang.pw/post/47.html
推荐您阅读更多有关于“”的文章
Powered By Z-Blogphp
分享:
支付宝
微信