学习Linux命令 - at

名称

at,batch,atq,atrm - 队列,检查或删除作业以供稍后执行

概要

[ -V ] [ -q 队列 ] [ -f 文件 ] [ -mldbv ] 时间
在-c 工作 [ 工作... ]
atq [ -V ] [ -q 队列 ]
atrm [ -V ] 工作 [ 工作... ]
批处理 [ -V ] [ -q 队列 ] [ -f 文件 ] [ -mv ] [ TIME ]

描述

使用用户的环境变量SHELL设置的shell,用户的登录shell或最终/ bin / sh从标准输入或指定的文件中读取和批量读取命令

在指定的时间执行命令

ATQ

列出用户的待处理作业,除非用户是超级用户; 在那种情况下,每个人的工作都被列出来了。 输出行的格式(每个作业一个)是:作业编号,日期,小时,作业类别。

ATRM

删除由他们的工作号码标识的工作。

批量

当系统负载水平允许时执行命令; 换句话说,当平均载荷降到0.8以下时,或者在调用atrun时指定的值。

At允许相当复杂的时间规格,扩展了POSIX.2标准。 它接受HH:MM格式的时间在一天中的特定时间运行作业。 (如果此时间已过,则假定为第二天。)您也可以指定午夜, 中午下午茶时间 (下午4点),并且可以在上午下午晚间。

您还可以通过以可选年份的 月份名称日期的形式给出日期或者给出MMDDYYMM / DD / YYDD.MM.YY的格式的日期来说明工作将在哪一天运行。 日期的规格必须遵循一天中的时间规格。 你也可以给出像现在这样的时间 + 计算 时间单位,其中时间单位可以是几分钟, 几小时, 几天几周 ,你可以通过今天后加上时间告诉今天工作,并明天开始工作通过在明天后缀时间

例如,从现在起三天下午4点开始工作,你会在下午4点+3天做在7月31日上午10点开始工作,你会在7月31日上午10点做,并在明天上午1点,明天上午1点你会做。

/usr/share/doc/at-3.1.8/timespec包含时间规范的确切定义。

对于atbatch ,从标准输入或使用-f选项指定并执行的文件读取命令 。 工作目录,环境(变量TERMDISPLAY_除外)和umask在调用时保留。 从su (1) shell调用的at - 或batch -命令将保留当前用户标识。 如果有的话,用户将被邮寄标准错误和标准输出。 邮件将使用/ usr / sbin / sendmail命令发送。 如果从su (1) shell执行at ,则登录shell的所有者将收到邮件。

超级用户可以在任何情况下使用这些命令。 对于其他用户,使用at的权限由文件/etc/at.allow/etc/at.deny确定

如果文件/etc/at.allow存在,则只允许在其中提及的用户名使用。

如果/etc/at.allow不存在,则检查/etc/at.deny ,然后允许其中未提及的每个用户名都被允许使用。

如果两者都不存在,则只允许超级用户使用at。

一个空的/etc/at.deny意味着每个用户都可以使用这些命令,这是默认配置。

选项

-V

将版本号打印到标准错误。

-q 队列

使用指定的队列。 队列名称由单个字母组成; 有效的队列名称范围从az 。 和AZ。 一个队列是批处理的 atb队列的默认值。 带有更高字母的队列运行时会增加更多的好处。 特殊队列“=”被保留用于当前正在运行的作业。 如果一个作业被提交给一个用大写字母指定的队列,那么它将被视为当时已经提交给批处理。 如果atq被赋予一个特定的队列,它将只显示在该队列中待处理的作业。

-m

即使没有输出,作业完成后也会向用户发送邮件。

-f 文件

文件读取作业而不是标准输入。

-l

atq的别名

-d

atrm的别名

-v

显示作业执行的时间。 除非设置了环境变量POSIXLY_CORRECT,否则显示的时间格式为“1997-02-20 14:50”; 那么,它将是“星期四2月20日14:50:00”。

-C

将命令行上列出的作业捕获到标准输出。