Linux命令是对Linux系统进行管理的命令。对于Linux系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,Linux系统管理的命令是它正常运行的核心,与之前的DOS命令类似。linux命令在系统中有两种类型:内置Shell命令和Linux命令。本文主要介绍Linux anacron 命令。

1、命令简介

anacron命令可用于定期执行命令,频率以天为单位指定,与cron(8)不同的是,它不假定机器连续运行。因此,它可以用于每天不运行24小时的机器上,以控制通常由cron控制的每日、每周和每月作业。

2、命令用法

anacron [-s] [-f] [-n] [-d] [-q] [-t anacrontab] [job] ...
anacron -u [-t anacrontab] [job] ...
anacron [-V|-h]

3、命令描述

可以使用anacron定期执行命令,频率以天为单位指定。与cron(8)不同,它不假设机器是连续运行的。因此,可以在不是一天24小时运行的机器上使用它来控制通常由cron控制的每天、每周和每月的作业。

当执行时,anacron从配置文件中读取作业列表,通常是/etc/anacrontab(参见anacrontab(5))。该文件包含anacron控制的作业列表。每个作业条目指定一个以天为单位的时间段、一个以分钟为单位的延迟、一个唯一的作业标识符和一个shell命令。

对于每个作业,anacron检查该作业是否在最近n天内执行过,其中n是为该作业指定的时间段。如果不是,anacron在等待指定为延迟参数的分钟数之后,运行作业的shell命令。

命令退出后,anacron将该作业的日期记录在一个特殊的时间戳文件中,这样它就可以知道何时再次执行它。时间计算只使用日期。时间是没有用的。

当没有其他作业要运行时,anacron将退出。

anacron只考虑那些在anacrona选项卡中指定的标识符与任何作业命令行参数匹配的作业。作业参数可以是shell通配符模式(确保在shell中使用足够的引号保护它们)。不指定作业参数等同于指定*(即,将考虑所有作业)。

除非给出了-d选项(参见下文),否则anacron在启动时就会切换到后台,并且父进程会立即退出。

除非给出-s-n选项,否则anacron会在延迟结束后立即启动作业。不同作业的执行是完全独立的。

4、命令选项

选项

描述

-f

强制执行作业,忽略时间戳。

-u

只更新作业的时间戳,到当前日期,但不运行任何内容。

-s

序列化作业的执行,在前一个作业完成之前,anacron不会启动新作业

-n

现在运行作业。忽略/etc/anacrontab文件中的延迟规格。这个选项意味着-s。

-d

在此模式下,anacron将信息性消息输出到标准错误和syslog,作业的输出像往常一样通过邮件发送

-q

禁止将消息显示为标准错误,仅适用于-d参数结合使用。

-t anacrontab

使用指定的anacrontab,而不是默认值

-V

打印版本信息,退出。

-h

打印简短的使用信息,然后退出。

5、使用示例

1)使用/root/myspool存储/etc/myanacron文件中定义的作业的所有时间戳信息

# anacron -S /root/myspool -t /etc/myanacron

2)使用-f参数,强制执行作业,忽略时间戳

# anacron -f /root/myspool

3)只将作业的时间戳更新到当前日期,但不运行任何操作

# anacron -d -u

6、相关文件

文件

说明

/etc/anacrontab

包含作业规范。有关完整描述,请参阅anacrontab(5)。

/var/spool/anacron

anacron使用该目录存储时间戳文件。

推荐文档