一、系统延时任务:
1、at命令:
at + 时间 | 设定任务执行时间 |
at -l | 查看任务列表 |
at -c 任务号 | 查看任务内容 |
at -r 任务号 | 取消任务执行 |
at now+1min | 延时一分钟执行 |
ctrl + D | 发起任务 |
示例:
1)使用watch命令进行监视:
2)用date命令查看时间为 00:18,用 at 命令在 00:20建立文件file1,并用 Ctrl + D 执行:
3)用 at now + 1min 命令在1分钟后建立文件 file2,并用 Ctrl + D 执行,此外用 at -l 命令查看任务列表:
4)用 at now + 1min 命令在1分钟后建立文件 file3,并用 Ctrl + D 执行,此外用 at -c 加上命令号查看任务内容,用 at -l 加上命令号取消任务执行:
2、at任务的黑名单和白名单:
/etc/at.deny | 黑名单,系统中默认存在,在此文件中出现的用户不能执行at命令 |
/etc/at.allow | 白名单,系统中默认不存在,当文件出现,普通用户不能执行at命令,只有在名单中的用户可以,并且/etc/at.deny失效 |
示例:
1)在用户lee没有加入黑名单之前,at命令可以执行:
2)在用户lee加入黑名单之后,at命令不可以执行:
3)编辑白名单/etc/at.allow,将用户leyla加入白名单,加入白名单之后黑名单失效,未在白名单内的用户都不能执行at命令:
二、系统定时任务:
1、系统控制crontab的服务:
systemctl status crond.service | 查看服务状态 |
2、crontab 时间表示方式:
man 5 crontab | 查看crontab 时间表示方式 |
minute | 0-59分钟间的某一分钟 |
hour | 0-23小时间的某一小时 |
day of month | 1-31天间的某一天 |
month | 1-12月间的某一月 |
day of week | 一周中0-7天的某一天 |
3、crontab 命令:
crontab -e -u 用户名 | 创建用户定时任务 |
crontab -l -u 用户名 | 查看用户定时任务 |
crontab -r -u 用户名 | 删除用户定时任务 |
示例:
创建每分钟建立/mnt/下五个文件的定时任务,然后删除此任务,并进行查看。