关于linux:Linux之at命令

15次阅读

共计 1939 个字符,预计需要花费 5 分钟才能阅读完成。

【Linux 常用命令速查手册】关注【入门小站】,后盾回复「1001」自取。

当应用 shell 脚本时,你可能想在某个特定的工夫运行 shell 脚本,Linux 零碎中提供了多个在特定工夫运行 shell 脚本的办法,其中一种办法就是应用 at 命令。

at 命令容许指定 Linux 零碎何时运行脚本,at 命令会将作业提交到队列中,指定 shell 何时运行该作业。at 的守护过程 atd 会当前台模式运行,查看作业队列来运行作业。atd 守护过程会查看零碎上的一个非凡目录来获取 at 命令的提交的作业。默认状况下,atd 守护过程每 60 秒查看一次目录。有作业时,会查看作业运行工夫,如果工夫与以后工夫匹配,则运行此作业。

at 容许应用一套相当简单的指定工夫的办法。它可能承受在当天的 hh:mm(小时: 分钟)式的工夫指定。如果该工夫已过来,那么就放在第二天执行。当然也可能应用 midnight(深夜),noon(中午),teatime(饮茶工夫,个别是下午 4 点)等比拟含糊的 词语来指定工夫。用户还可能采纳 12 小时计时制,即在工夫前面加上 AM(上午)或 PM(下午)来阐明是上午还是下午。也可能指定命令执行的具体日期,指定格局为 month day(月 日)或 mm/dd/yy(月 / 日 / 年)或 dd.mm.yy(日. 月. 年)。指定的日期必须跟在指定工夫的前面。

下面介绍的都是相对计时法,其实还可能应用绝对计时法,这对于安顿不久就要执行的命令是很有益处的。指定格局为:now + count time-units,now 就是以后工夫,time-units 是工夫单位,这里可能是 minutes(分钟)、hours(小时)、days(天)、weeks(星期)。count 是工夫的数量,到底是几天,还是几小时,等等。更有一种计时办法就是间接应用 today(明天)、tomorrow(今天)来指定实现命令的工夫。

须要装置此命令

Centos

> yum -y install at
> systemctl start atd
> systemctl enable atd

Ubuntu

> sudo apt-get install at -y

命令格局

at [参数] [工夫]

命令性能

在一个指定的工夫执行一个指定工作,只能执行一次

命令参数

  • -m 当指定的工作被实现之后,将给用户发送邮件,即便没有规范输入
  • -I atq 的别名
  • -d atrm 的别名
  • -v 显示工作将被执行的工夫
  • -c 打印工作的内容到规范输入
  • -V 显示版本信息
  • -q< 列队 > 应用指定的列队
  • -f< 文件 > 从指定文件读入工作而不是从规范输出读入
  • -t< 工夫参数 > 以工夫参数的模式提交要运行的工作

其它命令

  • atq 查看所有工作
  • atrm 删除一个工作

at 容许应用一套相当简单的指定工夫的办法。他可能承受在当天的 hh:mm(小时: 分钟)式的工夫指定。如果该工夫已过来,那么就放在第二天执行。当然也可能应用 midnight(深夜),noon(中午),teatime(饮茶工夫,个别是下午 4 点)等比拟含糊的 词语来指定工夫。用户还可能采纳 12 小时计时制,即在工夫前面加上 AM(上午)或 PM(下午)来阐明是上午还是下午。也可能指定命令执行的具体日期,指定格局为 month day(月 日)或 mm/dd/yy(月 / 日 / 年)或 dd.mm.yy(日. 月. 年)。指定的日期必须跟在指定工夫的前面。下面介绍的都是相对计时法,其实还可能应用绝对计时法,这对于安顿不久就要执行的命令是很有益处的。指定格局为:now + count time-units,now 就是以后工夫,time-units 是工夫单位,这里可能是 minutes(分钟)、hours(小时)、days(天)、weeks(星期)。count 是工夫的数量,到底是几天,还是几小时,等等。更有一种计时办法就是间接应用 today(明天)、tomorrow(今天)来指定实现命令的工夫。

三天后的下午 4 点执行 /bin/ls

at 4pm+ 3days
at> /bin/ls
at> <EOT>
job 5 at Tue Mar 16 16:00:00 2021

<EOT> 按 ctrl+d

今天 10 点钟,输入工夫到指定文件内

> at 10:00 tomorrow
at> date > /tmp/a.log
at> <EOT>
job 6 at Sun Mar 14 10:00:00 2021

<EOT> 按 ctrl+d

查看 at 的工作列表

> atq
5       Tue Mar 16 16:00:00 2021 a root
6       Sun Mar 14 10:00:00 2021 a root

显示曾经设置的工作内容

> at -c 5
#!/bin/sh
/bin/ls

删除曾经设置的工作

> atrm 5

原文链接:https://rumenz.com/rumenbiji/…
微信公众号: 入门小站

【Linux 常用命令速查手册】关注【入门小站】,后盾回复「1001」自取。

正文完
 0