Linux下的定时和延时任务
系统延时任务
at命令发起的延时任务都时一次性的
at + time
at -l /atq | 查看当前任务 |
---|---|
atrm /at -r | 取消指定任务 |
at -c | 查看任务内容 |
at now+1min | 延迟一分钟 |
at -f file | 延迟执行文件中的内容 |
at -m | 延迟命令没有输出时仍然发送邮件给执行者 |
at -M | 延迟命令有输出时但不发送邮件给执行者 |
测试:
[root@demo ~]# at 11:11
at> rm -fr /mnt/* ##延迟动作
at> <EOT> ##ctrl+d表示发起动作
job 6 at Tue Aug 1 11:11:00 2017
系统演示任务的黑白名单设定
/etc/at.deny | 用户黑名单,在此名单中出现的用户不能执行at命令 |
---|---|
/etc/at.allow | 用户白名单,名单默认不存在,但名单一旦出现,黑名单失效。系统所有用户默认不能执行at,只有在名单中出现的用户可以使用at命令 |
测试:
在黑名单中加入lee,lee则不能执行at命令,westos用户可以
白名单:
westos加入白名单,其他所有用户都不能执行命令。但是不会限制超级用户。
用户级系统定时任务 crontab
#定时任务时永久的
#定时任务程序crond,在系统中每分钟做任务扫描
#发起方式一#
crontab -u username -e | 编辑任务并让username去执行 |
---|---|
crontab -u username -r | 清空username的所有任务 |
crontab -u username -l | 查看任务 |
每隔2天,早上9点到下午5点,每月1号和15号,3到5月,每个周五
#发起方式二#
vim /etc/cron.d/filename
分钟 小时 天 月 周 用户 动作
-
-
-
-
- root rm -fr /mnt/* #超级用户每分钟清里一此/mnt
-
-
-