20.任务计划-----at

Posted lqynkdcwy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了20.任务计划-----at相关的知识,希望对你有一定的参考价值。

一次性任务

  • service atd start //启动服务
  • service atd stop //关闭服务
  • service atd restart //重启服务
  • service atd reload //重新载入配置
  • service atd status //查看服务状态

包:at

  • at命令:at [option] TIME

常用选项:

  • -V 显示版本信息:
  • -l: 列出指定队列中等待运行的作业;相当于atq
  • -d: 删除指定的作业;相当于atrm
  • -c: 查看具体作业任务
  • -f /path/from/somefile:从指定的文件中读取任务
  • -m:当任务被完成之后,将给用户发送邮件,即使没有标准输出
    技术分享图片

注意:作业执行命令的结果中的标准输出和错误以邮件通知给相关用户

技术分享图片
技术分享图片

TIME:定义出什么时候进行 at 这项任务的时间

  • HH:MM [YYYY-mm-dd]
  • noon, midnight, teatime(4pm)
  • tomorrow
  • now+#{minutes,hours,days, OR weeks}
    技术分享图片

时间格式

  • HH:MM 02:00
    • 在今日的 HH:MM 进行,若该时刻已过,则明天此时执行任务
  • HH:MM YYYY-MM-DD 02:00 2016-09-20
    • 规定在某年某月的某一天的特殊时刻进行该项任务
  • HH:MM[am|pm] [Month] [Date]
    • 04pm March 17
    • 17:20 tomorrow
  • HH:MM[am|pm] + number [minutes|hours|days|weeks]
    在某个时间点再加几个时间后才进行该项任务
    • now + 5 minutes
    • 02pm + 3 days

执行方式:

  • 1)交互式:ctrl+d结束
    技术分享图片

  • 2)输入重定向
    技术分享图片

技术分享图片

  • 3)at –f 文件
    技术分享图片

依赖与atd服务,需要启动才能实现at任务

  • service atd start //启动服务
  • service atd stop //关闭服务
  • service atd restart //重启服务
  • service atd reload //重新载入配置
  • service atd status //查看服务状态

at队列存放在/var/spool/at目录中

/etc/at.{allow,deny}控制用户是否能执行at任务

  • 白名单:/etc/at.allow 默认不存在,只有该文件中的用户才能执行at命令
  • 黑名单:/etc/at.deny 默认存在,拒绝该文件中用户执行at命令,而没有在at.deny 文件中的使用者则可执行
    技术分享图片

    /etc/at.allow优先级大于/etc/at.deny如果/etc/at.allow这个文件存在,而里面没有用户,表示禁止所有用户

  • 如果两个文件都不存在,只有 root 可以执行 at 命令
    技术分享图片

以上是关于20.任务计划-----at的主要内容,如果未能解决你的问题,请参考以下文章

CentOS_计划任务之At

CentOS_计划任务之At

CentOS_计划任务之At

计划任务

计划任务:at和crontab

8. Linux 任务计划