@Chiang
2019-09-28T13:03:35.000000Z
字数 1271
阅读 631
Linux
我们使用at这个命令来产生所要运行的任务,并将这个任务以文本文件的方式写入/var/spool/at/
目录内,该任务便能等待atd
这个服务的使用与执行了.
# ubuntu 更新
apt update
# ubuntu install atd
apt install at
#
利用/etc/at.allow
与/etc/at.deny
这两个文件来实现对at
的使用限制:
- 先找寻
/etc/at.allow
这个文件,写在这个文件中的用户才能使用at
,没在这个文件中的用户则不能使用at
(即使没有写在at.deny
当中)- 如果
/etc/at.allow
不存在,就查找/etc/at.deny
这个文件,写在这个at.deny
中的用户则不能使用at
,而没有在这个at.deny
文件中的用户,就可以使用at
.- 如果两个文件都不存在,那么只有root可以使用
at
这个命令.
at [-mldv] TIME
at -c 任务号码
# 设置任务 ctrl+d 结束
at now + 5 minutes
# 查看任务内容
at -c 2
# 查询at计划任务
atq
# 删除计划任务
atrm (jobnumber)
系统有空时才执行后台任务
batch
是利用at
来执行命令的,只是加入一些控制参数.- 它是在CPU的任务负载小于0.8的时候,才执行你的工作任务.
使用uptime
可以查看1分钟,5分钟,15分钟的[平均任务负载]量
利用/etc/cron.allow
与/etc/cron.deny
这两个文件来实现对cron
的使用限制和at
是类似的
# crontab 语法
crontab [-u username] [-l|-e|-r]
# 编辑
crontab -e
# 编辑页面里:
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
# 分时日月周 |<===命令串===>|
代表的意义 | 分钟 | 小时 | 日期 | 月份 | 周 | 命令 |
---|---|---|---|---|---|---|
数字范围 | 0~59 | 0~23 | 1~31 | 1~12 | 0~7 | 需要执行的命令 |
特殊字符 | 代表意义 |
---|---|
*(星号) | 代表任何时候都接受的意思 |
,(逗号) | 代表分割时段的意思 |
-(减号) | 代表一段时间范围内 |
/n(斜线) | 那个n代表数字,亦即是[n单位间隔]的意思 |
- 当用户使用
crontab
这个命令来建立计划任务之后,该项任务就会被记录到/var/spool/cron
中,而且是以账号来作为判断根据的.- 系统配置文件
/etc/crontab
/etc/cron.
# 语法
anacron [-sfn] [job]..
anacron -u [job]..
参考资料:
鸟哥的Linux私房菜
如何在Ubuntu 16.04上安装配置邮件发送服务器
Ubuntu下crontab的安装和使用