定时,延迟,你造吗!
夜半时分,当所有人都已经睡去,而你还要待在电脑旁只为在半夜12点发出一份邮件时,你是否还记得at(延迟)这个命令,当你还要每天定时定点的手动清理系统垃圾时,你可知有一个叫做cron(定时)的命令在静静等着你。如果不知道的话,就和我一起来学习吧!
at : 延迟命令,具体参数如下:
at -l ##列出延迟任务id
at -r 任务id ##删除次id的任务
at -m ##让无输出的命令产生邮件
at -M ##让有输出的命令不产生邮件
at -c 任务id ##查看此id的延迟任务的执行
at -f 文件 ##用文件内记录的命令作为延迟
例子:
at命令默认是有黑名单在/etc/at.deny,但是没有白名单,将用户写入黑名单之后,该用户就不能执行at命令。白名单可以自己设置,在/etc/下创建at.allow文件,就生成了at的白名单,一旦白名单生成,黑名单将失效,即除了root用户和写入白名单的用户,其它用户都不能执行at命令。
cron :定时
cron设定一共有三种方法:
1.crontabe -e -u 用户名(可以不写)
格式: 分钟 小时 天 月 周 事件
例子:
2.文件定义方式:
(1)vim /var/spool/cron /用户名称 ##以某个用户身份执行cron,文件名称必须和用户名称一致。
格式: 分 时 天 月 周 动作
例子:
(3)vim /etc/cron.d/文件
格式:分 时 天 月 周 用户 动作 ##设定多个用户执行cron
例子:
还可以用脚本的方式执行;
例子:
cron也有黑白名单,默认情况下只有黑名单,在/etc/cron.deny中写入的用户是不能执行cron命令,可以在/etc 下建立cron.allow目录,该目录为白名单,注意的是白名单一旦生成,则黑名单失效,除了root用户和写入白名单的用户,其它用户都不能执行cron命令。
现在,你学会延迟和定时命令了吗…………