创建和编辑 crontab 文件

http://docs.oracle.com/cd/E24847_01/html/819-6951/sysrescron-24589.html

创建和编辑 crontab 文件

创建 crontab 文件的最简单方法是使用 crontab -e 命令。此命令会调用已为系统环境设置的文本编辑器。系统环境的缺省编辑器在 EDITOR 环境变量中定义。如果尚未设置此变量,crontab 命令将使用缺省编辑器 ed。最好选择您熟悉的编辑器。

以下示例说明如何确定是否已定义编辑器,以及如何将 vi 设置为缺省值。

$ which $EDITOR
$
$ EDITOR=vi
$ export EDITOR

创建 crontab 文件时,该文件会自动放入 /var/spool/cron/crontabs 目录,并以您的用户名命名。如果具有超级用户特权,则可为其他用户或 root 创建或编辑 crontab 文件。

如何创建或编辑 crontab 文件

开始之前

如果要创建或编辑属于 root 或其他用户的 crontab 文件,您必须成为超级用户或承担等效角色。角色包含授权和具有特权的命令。有关角色的更多信息,请参见《系统管理指南:安全性服务》中的"配置 RBAC(任务列表)"

无需成为超级用户,便可编辑自己的 crontab 文件。

  1. 创建新的 crontab 文件,或编辑现有文件。
    $ crontab -e [username]

    其中,username 指定您要为其创建或编辑 crontab 文件的用户帐户的名称。无需具有超级用户特权便可创建自己的 crontab 文件,但如果要为 root 或其他用户创建或编辑 crontab 文件,则必须具有超级用户特权。


    创建和编辑 crontab 文件

    注意 - 如果意外键入了不带选项的 crontab 命令,请按下编辑器的中断字符。使用此字符将退出而不会保存更改。如果保存了更改并退出文件,现有的 crontab 文件将被空文件覆写。


  2. 向 crontab 文件中添加命令行。

    按照crontab 文件项的语法中所述的语法操作。将 crontab 文件放入 /var/spool/cron/crontabs 目录。

  3. 验证 crontab 文件更改。
    # crontab -l [username]

示例 8-1 创建 crontab 文件

以下示例说明如何为其他用户创建 crontab 文件。

# crontab -e jones

添加到新 crontab 文件中的以下命令项将在每个星期日的凌晨 1:00 自动删除用户起始目录中的所有日志文件。由于该命令项不重定向输出,因此将重定向字符添加到 *.log 之后的命令行中。这样可以确保正常执行命令。

# This command helps clean up user accounts.
1 0 * * 0 rm /home/jones/*.log > /dev/null 2>&1

如何验证 crontab 文件是否存在

  • 要验证用户的 crontab 文件是否存在,请在 /var/spool/cron/crontabs 目录中使用 ls -l 命令。例如,以下输出说明用户 jones 和 smith 的 crontab 文件存在。
    $ ls -l /var/spool/cron/crontabs
    -rw-r--r-- 1 root sys 190 Feb 26 16:23 adm
    -rw------- 1 root staff 225 Mar 1 9:19 jones
    -rw-r--r-- 1 root root 1063 Feb 26 16:23 lp
    -rw-r--r-- 1 root sys 441 Feb 26 16:25 root
    -rw------- 1 root staff 60 Mar 1 9:15 smith
    -rw-r--r-- 1 root sys 308 Feb 26 16:23 sys

    使用 crontab -l 命令验证用户的 crontab 文件的内容,如如何显示 crontab 文件中所述。

上一篇:Objective-C:@class和#import


下一篇:leetcode Permutations II 无重全排列