会计考友 发表于 2012-8-4 14:06:19

Crontab命令的语法

文章介绍了crontab的用法,crontab的过程命令提交、编辑、列出或除去 cron 作业。一个 cron 作业是一个命令,其运行是由 cron 守护程序在规则的调度间隔执行的。要提交一个 cron 作业,指定 crontab 命令用 -e 标志。crontab 命令调用一个编辑会话,允许创建一个 crontab 文件。
标签:Crontab 命令 Linux
crontab 命令的用途就是:提交、编辑、列出或除去 cron 作业。
语法
crontab [ -e [UserName] | -l [UserName] | -r [UserName] | -v [UserName] | File ]
描述
crontab 命令提交、编辑、列出或除去 cron 作业。一个 cron 作业是一个命令,其运行是由 cron 守护程序在规则的调度间隔执行的。要提交一个 cron 作业,指定 crontab 命令用 -e 标志。crontab 命令调用一个编辑会话,允许创建一个 crontab 文件。在这个文件中,为每个 cron 创建条目。每个条目必须是一种 cron 守护程序可接受的格式。要得到创建条目的信息,参阅 crontab 文件条目格式。
当创建完条目和退出文件后,crontab 命令将它复制到 /var/spool/cron/crontabs 目录,并把它放到一个文件中,此文件的名称是当前的用户名。如果以用户名命名的文件已存在于 crontabs 目录中,crontab 命令会覆盖它。
同样的,可以通过指定文件参数创建 crontab 文件。如果此文件已经存在,格式必须是 cron 守护程序所需要的。如果文件不存在,crontab 命令就调用编辑器。如果 EDITOR 环境变量存在,此命令就调用它指定的编辑器。否则,crontab 命令调用 vi 编辑器。
要列出 crontab 文件的内容,就指定 crontab 命令并采用 -l 标志。要除去存在的文件,采用 -r 标志。
可选的 UserName 参数可被 crontab 文件的所有者或者 root 用户来使用,为指定的用户编辑、列出、除去或验证 cron 作业的状态。如果 UserName 是无效的,就会产生错误消息并退出程序。如果可选的 UserName 参数没有被指定,这个 crontab 标志对于 root 用户和当前用户可用。
安全性
只有 root 用户和 crontab 文件的所有者可以在 -e、-l、-r 和 -v 标志后面使用 UserName 以编辑、列出、除去或验证指定用户的 crontab 文件。
cron 守护程序
这个 cron 守护程序运行的命令和 crontab 文件条目是相对应的。如果不重新定向 cron 作业的输出为标准输出或标准错误,cron 守护程序就会通过电子邮件告知您任何命令输出或错误。如果在 crontab 文件中指定了不正确的 cron 作业,这个 cron 守护程序不运行这个作业。
cron 守护程序只在 cron 守护程序被初始化时检查 crontab 文件。当用 crontab 命令改变 crontab 文件时,指示变化的消息被发送到 cron 守护程序。这消除了在规则的调度间隔检查新的或改变的文件的开销。
控制使用 crontab 命令
/var/adm/cron/cron.allow 和 /var/adm/cron/cron.deny 文件控制哪一个用户可以使用 crontab 命令。root 用户可以创建、编辑或删除这些文件。这些文件中的条目是用户登录名,每行一个名称。如果登录标识和多个的登录名称相关联,这个 crontab 命令采用第一个在 /etc/passwd 文件中的登录名称,而不管当前实际使用哪一个登录名称。而且,要允许用户启动 cron 作业,应该使用 chuser 命令将 /etc/security/user 文件中的守护程序属性设置为 TRUE。
以下关于 cron.allow 文件的一个示例:
root nick dee sarah
如果 cron.allow 文件存在,只有在文件中出现其登录名称的用户可以使用 crontab 命令。root 用户的登录名必须出现在 cron.allow 文件中,如果这个文件存在的话。系统管理员可以明确的停止一个用户,通过使用 crontab 命令,同时在 cron.deny 文件中列出用户的登录名。如果只有 cron.deny 文件存在,任一名称没有出现在这个文件中的用户可以使用 crontab 命令。
如果以下一个条件成立,用户将不能使用 crontab 命令:
cron.allow 文件和 cron.deny 文件不存在(只允许 root 用户)。
cron.allow 文件存在,但用户的登录名并不列在其中。
cron.deny 文件存在,并且用户的登录名列在其中。
如果 cron.allow 和 cron.deny 文件都不存在,只有被 root 用户授权的人可以用 crontab 命令提交一个作业。
crontab 文件条目格式
一个 crontab 文件包含每个 cron 作业的条目。条目由换行字符分开。每个 crontab 文件条目包括 6 个字段,它们被空格或制表符以以下格式分开:
分 时 日期 月 星期 command
这些字段接收以下值:
分 0 到 59
时 0 到 23
日期 1 到 31
月 1 到 12
星期 0 到 6 (星期日到星期六)
页: [1]
查看完整版本: Crontab命令的语法