大家都知道crontab是执行定时任务的命令,那么at又是什么呢? 其实at也是定时任务命令,不同的是crontab是执行循环任务,at执行一次性任务
首先说下时间例子
Minute at now + 5 minutes 任务在5分钟后运行
Hour at now + 1 hour 任务在1小时后运行
Days at now + 3 days 任务在3天后运行
Weeks at now + 2 weeks 任务在两周后运行
Fixed at midnight 任务在午夜运行
Fixed at 10:30pm 任务在晚上10点30分
Fixed at 23:59 12/31/2018 任务在2018年12月31号23点59分
比如设计一个程序, 让任务在 2018年4月18 日 11:55 的时候将/home/hadoop/test文件夹下前一天的文件备份并压缩 ,存放在/home/hadoop/bak文件夹中,
且文件名为如下形式svn.2018.4.18.tar.gz 在写完命令后 按ctrl +d 那么任务就生成了,注意:/home/hadoop/bak目录要先建好.
查看任务使用
删除任务使用
接着查看文件 ,(我的时间重新改过了,但是命令没有问题)
通常情况下root用户是可以使用这个命令的,其他用户是否能使用取决于两个文件:/etc/at.allow和/etc/at.deny
默认是没有at.allow文件的,但这个文件的优先级要比at.deny高 ,如果at.deny写入了某个用户,那么该用户将不能使用at命令.可以将用户写在at.allow里面.