1.一次性计划任务
at命令
时间格式
1)hh:mm 几时几分
2)midnight(深夜) noon(中午)
teatime(下午茶)
3)12小时 AM PM
4)日期 mm/dd/yy (月日年)
5)now+n minutes(hours,days)
6)file文件中存放了多条命令
at -f file 时间 日期
2.at执行权限
用户是否可以使用at命令计划任务,和/etc/at.allow文件及/etc/at.deny文件相关
1)如果at.allow文件存在,用户名不在其中
2)at.deny文件存在,用户在其中
时间规范的确切定义可以在/usr/share/doc/at-3.1.10/timespec中查看
默认情况下计划任务都是放在/var/spool/at/这个文件
root用户可以在任何情况下使用at命令,而其他用户使用at命令的权限定义在/etc/at.allow(被允许使用计划任务的用户)和/etc/at.deny(被拒绝使用计划任务的用户)文件中
如果/etc/at.allow文件存在,只有在该文件中的用户名对应的用户才能使用at
如果/etc/at.allow文件不存在,/etc/at.deny存在,所有不在/etc/at.deny文件中的用户可以使用at
at.allow比at.deny优先级高,执行用户是否可以执行at命令,先看at.allow文件没有才看at.deny文件
如果/etc/at.allow和/etc/at.deny文件都不存在,只有root用户能使用at
一个空内容的/etc/at.deny表示任何用户都能使用at命令,这是默认的配置
一般情况下这两个文件存在一个即可。如果只有少数几个用户需要使用计划任务,那么就保留at.allow文件,如果大部分用户都要使用计划任务,那么保留at.deny即可
systemctl status atd
[root@localhost ~]# at 9:18
at> mkdir -p /tmp/123dir
at> <EOT>
job 1 at Fri Nov 27 09:18:00 2020
[root@localhost ~]# at -l
1 Fri Nov 27 09:18:00 2020 a root
[root@localhost ~]# at now +5 hour
at> reboot
at> <EOT>
job 2 at Thu Nov 26 23:46:00 2020
[root@localhost ~]# at now +5 min
at> touch 123
at> <EOT>
job 3 at Thu Nov 26 18:51:00 2020
[root@localhost ~]# at -l
1 Fri Nov 27 09:18:00 2020 a root
2 Thu Nov 26 23:46:00 2020 a root
3 Thu Nov 26 18:51:00 2020 a root
2.周期计划任务
1.为特定用户编辑周期计划任务
crontab -u root -e (为root用户编写周期计划任务)
2.普通用户为自己编辑计划任务
crontab -e
crontab常用参数
3.配置文件编写计划任务
vim /etc/crontab
4.编辑完毕后重启生效
systemctl restart crond.service
5.配置文件写周期计划任务编写格式