计划任务
在指定的时间执行命令
- at - 将任务排队,在指定的时间执行。
- atq - 查看待执行的任务队列。
- atrm - 从队列中删除待执行的任务。
指定3天以后下午5点要执行的任务。
[root ~]# at 5pm+3days
at> rm -f /root/*.html
at> <EOT>
job 9 at Wed Jun 5 17:00:00 2019
查看待执行的任务队列。
[root ~]# atq
9 Wed Jun 5 17:00:00 2019 a root
从队列中删除指定的任务。
[root ~]$ atrm 9
at的特殊写法
at 20:00 2008-10-1 在具体时间执行
at now +10min 在十分钟后执行
at 17:00 tomorrow 明天下午五点执行
at 6:00 pm + 3 days 在3天后下午6点执行
at 23:00 < a.txt 将a.txt导入
计划任务表 - crontab。
[root ~]# crontab -e
***** echo "hello, world!" >> /root/hello.txt
59 23 * * * rm -f /root/*.log
说明:输入crontab -e命令会打开vim来编辑Cron表达式并指定触发的任务,上面我们定制了两个计划任务,一个是每分钟向/root目录下的hello.txt中追加输出hello, world!;另一个是每天23时59分执行删除/root目录下以log为后缀名的文件。如果不知道Cron表达式如何书写,可以参照/etc/crontab文件中的提示(下面会讲到)或者用搜索引擎找一下“Cron表达式在线生成器”来生成Cron表达式。
和crontab相关的文件在/etc目录下,通过修改/etc目录下的crontab文件也能够定制计划任务。