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调用python环境变量 crontab编写_command

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

  1. 向 crontab 按照crontab中所述的语法操作。将 crontab 文件放入 /var/spool/cron/crontabs
  2. 验证 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中所述。