什么是例行性命令?
每个人或多或少都有一些约会或者是工作,有的工作是例行性的,例如每年一次的加薪、 每个月一次的工作报告、每周一次的午餐会报、每天需要的打卡等等;
Linux 工作排程的种类: at, cron
- at : 这个工作仅执行一次就从 Linux 系统中的排程中取消;
- cron : 这个工作将持续例行性的作下去!(其实这里面还有很多其他的,但是这两个比较重要,把这两个掌握好就行了)
突发性的,就是这次做完以后就没有的那一种
At
at预设是不启动的来
/etc/init.d/atd restart //启动命令
service atd start/restart/stop //启动命令/重启/停止
例如Centos7,因为消除了daemon,转换成了systemctl,所以上面的命令可能是用不了,那就使用下一个
systemctl start atd。service
应用实例
1.先启动,然后运行一下命令“一分钟后创建一个文件夹”
[root@localhost /]# at now + 1 minutes
at> mkdir aaa
at> <EOT>
job 5 at Mon Jul 13 20:27:00 2020
2.定时关机更新
[root@linux ~]# at 23:00 2005-09-15
at> /bin/sync
at> /bin/sync
at> /sbin/shutdown -h now
at> <EOT>
job 10 at 2005-09-15 23:00)
注意:该定时任务中最小时间单位就是分钟
另外他下面还有两个权限设置文件:
/etc/at.allow 白名单
/etc/at.deny 黑名单
crontab
例行性的,就是每隔一定的周期要来办的事项;
默认开启的 ps -ef|grep crond
crontab [-u username] [-l|-e|-r]
45 22 * * * 每天22点45分执行
*/10 4 * * * 每天凌晨4点,每隔10分钟执行一次
案例:每分钟向test文件中输入 111
[root@localhost /]# crontab -e
在弹出的文本框中敲入如下命令
* * * * * echo "225" >> /tmp/test
Crontab -l 查看任务
Crontab -r 清除所有任务