at定时命令
1.参数:
at -l ##列出延迟任务的id
-r 任务id ##删除此id任务
-m ##让无输出的id产生邮件
-M ##让有输出的id不产生邮件
-c 任务id ##查看此id延迟任务的执行动作
-f 文件 ##用文件记录的命令作为延迟任务的执行动作
2.at命令的使用控制
系统默认全部用户拥有执行at命令的权力
【at用户黑名单】
默认情况下,系统存在用户黑名单/etc/at.deny
此名单默认为空,并在白名单不存在时生效
【在黑名单中写入student用户,student使用不了at命令】
【at用户白名单】
默认情况下,系统不存在白名单/etc/at.allow
白名单出现,名单中出现的用户和root用户可以使用at命令,其他用户不能使用
【黑名单和白名单都写入student用户,student用户可以使用at命令,说明白名单存在时,黑名单不生效】
3.使用方法
at now+3min
>命令
>ctrl+d
【示例1】
【示例2】
cron循环定时
1.这个程序是由cron.service服务提供
2.写入程序的时间和事件是永久保存的
3.cron设定方法
属性 | 分钟 | 小时 | 日期 | 月份 | 周 | 命令 |
数字范围 | 0---59 | 0--23 | 1--31 | 1--12 | 0--7 | 动作 |
4.特殊字符 * 表示任何时刻
5.参数:
-u:指定执行的用户
-e:编辑cronab的工作内容
-r:删除cronab的工作内容
-l:查看cronab的工作内容
【cron用户黑名单】
默认情况下,系统存在用户黑名单/etc/cron.deny
此名单默认为空,并在白名单不存在时生效
默认情况下,系统不存在白名单/etc/cron.allow
白名单出现,名单中出现的用户和root用户可以使用at命令,其他用户不能使用
6.设定方法
【命令方式】
crontab -e
分钟 | 小时 | 天 | 月 | 周 | 事件 | 解释 |
58 | 06 | * | * | * | rm -fr /mnt | ##每天06点58分清除/mnt文件的内容 |
58 | 6 | 1-15 | * | * | rm -fr /mnt/ | ##每月1-15号06点58分清除/mnt文件的内容 |
*/2 | * | 1,15 | * | 3 | rm -fr /mnt/ | ##每月1号,15号,每周3,隔2分钟清除/mnt文件的内容 |
【文本方式】
vim /var/spool/cron/用户名 ##以某种用户执行cron
vim /etc/cron.d/文件 ##设定多个用户执行cron