Penguin

Differences between current version and revision by previous author of crontab(5).

Other diffs: Previous Major Revision, Previous Revision, or view the Annotated Edit History

Newer page: version 4 Last edited on Tuesday, January 21, 2003 9:33:51 pm by CraigBox
Older page: version 1 Last edited on Tuesday, June 4, 2002 12:30:36 am by perry Revert
@@ -1,230 +1,136 @@
-CRONTAB  
-!!!CRONTAB  
-NAME  
-DESCRIPTION  
-EXAMPLE CRON FILE  
-EXAMPLE SYSTEM CRON FILE  
-SEE ALSO  
-EXTENSIONS  
-AUTHOR  
-----  
 !!NAME 
+crontab - tables for driving cron  
  
-  
-crontab - tables for driving cron  
 !!DESCRIPTION 
  
+A ''crontab'' file contains instructions to the cron(8) daemon of the general form: ''run this command at this time on this date''.  
+Each user has their own crontab, and commands in any given crontab will be executed as the user who owns the crontab. Uucp and News  
+will usually have their own crontabs, eliminating the need for explicitly running su(1) as part of a cron command.  
  
-A ''crontab'' file contains instructions to the  
-cron (8 ) daemon of the general form: ``run this  
-command at this time on this date''. Each user has their own  
-crontab , and commands in any given crontab will be executed  
-as the user who owns the crontab . Uucp and News will usually  
-have their own crontabs , eliminating the need for explicitly  
-running su(1) as part of a cron command
+Blank lines and leading spaces and tabs are ignored. Lines whose first non-space character is a hash-sign (# ) are comments, and are  
+ignored. Note that comments are not allowed on the same line as cron commands , since they will be taken to be part of the command .  
+Similarly , comments are not allowed on the same line as environment variable settings
  
+An active line in a crontab will be either an environment setting or a cron command. An environment setting is of the form,  
  
-Blank lines and leading spaces and tabs are ignored. Lines  
-whose first non-space character is a hash-sign (#) are  
-comments, and are ignored. Note that comments are not  
-allowed on the same line as cron commands, since they will  
-be taken to be part of the command. Similarly, comments are  
-not allowed on the same line as environment variable  
-settings.  
+ name = value  
  
-  
-An active line in a crontab will be either an environment  
-setting or a cron command. An environment setting is of the  
-form,  
-  
-  
-name = value  
-  
-  
- where the spaces around the equal-sign (=) are optional, and  
- any subsequent non-leading spaces in ''value'' will be  
- part of the value assigned to ''name''. The ''value''  
- string may be placed in quotes (single or double, but  
- matching) to preserve leading or trailing 
+where the spaces around the equal-sign (=) are optional, and any subsequent non-leading spaces in ''value'' will be part of the value  
+ assigned to ''name''. The ''value'' string may be placed in quotes (single or double, but matching) to preserve leading or trailing 
 blanks. 
  
+Several environment variables are set up automatically by the cron(8) daemon. SHELL is set to /bin/sh, and LOGNAME and HOME are set  
+from the /etc/passwd line of the crontab's owner. PATH is set to "/usr/bin:/bin". HOME, SHELL, and PATH may be overridden by settings  
+in the crontab; LOGNAME may not.  
  
-Several environment variables are set up automatically by  
- the cron(8) daemon . SHELL is set to /bin/sh , and  
-LOGNAME and HOME are set from the /etc/passwd line of the  
-crontab's owner . PATH is set to  
-''  
+(Another note: the LOGNAME variable is sometimes called USER on BSD systems ... on these systems , USER will be set also .)  
  
+In addition to LOGNAME, HOME, and SHELL, cron(8) will look at MAILTO if it has any reason to send mail as a result of running commands  
+in ''this'' crontab. If MAILTO is defined (and non-empty), mail is sent to the user so named. If MAILTO is defined but empty  
+(MAILTO=""), no mail will be sent. Otherwise mail is sent to the owner of the crontab.  
  
-(Another note: the LOGNAME variable is sometimes called USER  
-on BSD systems ... on these systems , USER will be set  
-also .)  
+The format of a cron command is very much the V7 standard, with a number of upward-compatible extensions. Each line has five time and  
+date fields, followed by a command, followed by a newline character ('). The system crontab (/etc/crontab) uses the same format,  
+except that the username for the command is specified after the time and date fields and before the command . Note that if the line  
+does not have a trailing newline character , the entire line will be silently ignored by both crontab and cron; the command will never  
+be executed
  
  
-In addition to LOGNAME, HOME, and SHELL, cron(8) will  
-look at MAILTO if it has any reason to send mail as a result  
- of running commands in ``this '' crontab. If MAILTO is  
-defined (and non-empty) , mail is sent to the user so named.  
-If MAILTO is defined but empty (MAILTO=  
- '' 
+Commands are executed by cron(8) when the minute, hour, and month of year fields match the current time, ''and'' when at least one of  
+the two day fields (day of month , or day of week) match the current time (see ''Note'' below). cron(8) examines cron entries once  
+every minute. The time and date fields are:  
  
+ field allowed values  
+ ----- --------------  
+ minute 0-59  
+ hour 0-23  
+ day of month 1-31  
+ month 1-12 (or names, see below)  
+ day of week 0-7 (0 or 7 is Sun, or use names)  
  
-The format of a cron command is very much the V7 standard,  
-with a number of upward-compatible extensions. Each line has  
-five time and date fields, followed by a command, followed  
-by a newline character ('0). The system crontab  
-(/etc/crontab) uses the same format, except that the  
-username for the command is specified after the time and  
-date fields and before the command. Note that if the line  
-does not have a trailing newline character, the entire line  
-will be silently ignored by both crontab and cron; the  
-command will never be executed.  
  
+A field may be an asterisk (*), which always stands for ''first-last''.  
  
-Commands are executed by cron(8) when the minute,  
-hour, and month of year fields match the current time ,  
-''and '' when at least one of the two day fields (day of  
-month , or day of week) match the current time (see ``Note''  
-below) . cron(8) examines cron entries once every  
-minute. The time and date fields are:  
+Ranges of numbers are allowed. Ranges are two numbers separated with a hyphen. The specified range is inclusive. For example , 8-11 for  
+an ''hours '' entry specifies execution at hours 8, 9 , 10 and 11
  
+Lists are allowed. A list is a set of numbers (or ranges) separated by commas. Examples: ''1,2,5,9'', ''0-4,8-12''.  
  
-field allowed values  
------ --------------  
-minute -59  
-hour -23  
-day of month 1-31  
-month 1- 12 (or names , see below )  
-day of week -7 (0 or 7 is Sun , or use names)  
+Step values can be used in conjunction with ranges. Following a range with ''/<number>'' specifies skips of the number's value  
+through the range. For example, '' -23/2'' can be used in the hours field to specify command execution every other hour (the  
+alternative in the V7 standard is '' ,2,4,6,8,10, 12,14,16,18,20,22'' ). Steps are also permitted after an asterisk, so if  
+you want to say ''every two hours'' , just use ''*/2''.  
  
+Names can also be used for the ''month'' and ''day of week'' fields. Use the first three letters of the particular day or month (case  
+doesn't matter). Ranges or lists of names are not allowed.  
  
-A field may be an asterisk (* ), which always stands for  
-``first -last''
+The ''sixth'' field (the rest of the line ) specifies the command to be run. The entire command portion of the line , up to a newline or  
+% character, will be executed by /bin/sh or by the shell specified in the SHELL variable of the cronfile. Percent -signs (%) in the  
+command, unless escaped with backslash (), will be changed into newline characters, and all data after the first % will be sent to the  
+command as standard input
  
+Note: The day of a command's execution can be specified by two fields -- day of month, and day of week. If both fields are restricted  
+(ie, aren't *), the command will be run when ''either'' field matches the current time. For example, ''30 4 1,15 * 5'' would cause a  
+command to be run at 4:30 am on the 1st and 15th of each month, plus every Friday.  
  
-Ranges of numbers are allowed. Ranges are two numbers  
-separated with a hyphen. The specified range is inclusive.  
-For example , 8-11 for an ``hours'' entry specifies execution  
-at hours 8, 9, 10 and 11.  
+Instead of the first five fields , one of eight special strings may appear:  
  
+ string meaning  
+ ------ -------  
+ @reboot Run once, at startup.  
+ @yearly Run once a year,  
+ @annually (same as @yearly)  
+ @monthly Run once a month,  
+ @weekly Run once a week,  
+ @daily Run once a day,  
+ @midnight (same as @daily)  
+ @hourly Run once an hour,  
  
-Lists are allowed. A list is a set of numbers (or ranges)  
-separated by commas. Examples: ``1,2,5,9'',  
-`` -4,8 -12''.  
+-----  
  
-  
-Step values can be used in conjunction with ranges.  
-Following a range with ``/  
-  
-  
-Names can also be used for the ``month'' and ``day of week''  
-fields. Use the first three letters of the particular day or  
-month (case doesn't matter). Ranges or lists of names are  
-not allowed.  
-  
-  
-The ``sixth'' field (the rest of the line) specifies the  
-command to be run. The entire command portion of the line,  
-up to a newline or % character, will be executed by /bin/sh  
-or by the shell specified in the SHELL variable of the  
-cronfile. Percent-signs (%) in the command, unless escaped  
-with backslash (), will be changed into newline characters,  
-and all data after the first % will be sent to the command  
-as standard input.  
-  
-  
-Note: The day of a command's execution can be specified by  
-two fields -- day of month, and day of week. If both fields  
-are restricted (ie, aren't *), the command will be run when  
-''either'' field matches the current time. For  
-example,  
-``30 4 1,15 * 5'' would cause a command to be run at 4:30 am  
-on the 1st and 15th of each month, plus every  
-Friday.  
-  
-  
-Instead of the first five fields, one of eight special  
-strings may appear:  
-  
-  
-string meaning  
------- -------  
-@reboot Run once, at startup.  
-@yearly Run once a year,  
-@annually (same as @yearly)  
-@monthly Run once a month,  
-@weekly Run once a week,  
-@daily Run once a day,  
-@midnight (same as @daily)  
-@hourly Run once an hour,  
 !!EXAMPLE CRON FILE 
  
+ # use /bin/sh to run commands, no matter what /etc/passwd says  
+ SHELL=/bin/sh  
+ # mail any output to `paul', no matter whose crontab this is  
+ MAILTO=paul  
+ #  
+ # run five minutes after midnight, every day  
+ 5 0 * * * $HOME/bin/daily.job  
  
-# use /bin/sh to run commands, no matter what /etc/passwd says  
-SHELL=/bin/sh  
-# mail any output to `paul', no matter whose crontab this is  
-MAILTO=paul  
-#  
-# run five minutes after midnight, every day  
-5 0 * * * $HOME/bin/daily.job  
 !!EXAMPLE SYSTEM CRON FILE 
  
+This has the username field, as used by /etc/crontab.  
  
-This has the username field, as used by  
-/etc/crontab
+ # /etc/crontab: system-wide crontab  
+ # Unlike any other crontab you don't have to run the `crontab'  
+ # command to install the new version when you edit this file.  
+ # This file also has a username field, that none of the other crontabs do.  
+ SHELL=/bin/sh  
+ PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin  
+ # m h dom mon dow usercommand  
+ 42 6 * * * rootrun-parts --report /etc/cron.daily  
+ 47 6 * * 7 rootrun-parts --report /etc/cron.weekly  
+ 52 6 1 * * rootrun-parts --report /etc/cron.monthly  
+ #  
+ # Removed invocation of anacron , as this is now handled by a  
+ # /etc/cron .d file  
  
-  
-# /etc/crontab: system-wide crontab  
-# Unlike any other crontab you don't have to run the `crontab'  
-# command to install the new version when you edit this file.  
-# This file also has a username field, that none of the other crontabs do.  
-SHELL=/bin/sh  
-PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin  
-# m h dom mon dow usercommand  
-42 6 * * *rootrun-parts --report /etc/cron.daily  
-47 6 * * 7rootrun-parts --report /etc/cron.weekly  
-52 6 1 * *rootrun-parts --report /etc/cron.monthly  
-#  
-# Removed invocation of anacron, as this is now handled by a  
-# /etc/cron.d file  
 !!SEE ALSO 
  
+cron(8), crontab(1)  
  
-cron(8), crontab(1)  
 !!EXTENSIONS 
  
+* When specifying day of week, both day 0 and day 7 will be considered Sunday. BSD and ATT seem to disagree about this.  
+* Lists and ranges are allowed to co-exist in the same field. "1-3,7-9" would be rejected by ATT or BSD cron -- they want to see "1-3" or "7,8,9" ONLY.  
+* Ranges can include "steps", so "1-9/2" is the same as "1,3,5,7,9".  
+* Names of months or days of the week can be specified by name.  
+* Environment variables can be set in the crontab. In BSD or ATT, the environment handed to child processes is basically the one from /etc/rc.  
+* Command output is mailed to the crontab owner (BSD can't do this), can be mailed to a person other than the crontab owner (SysV can't do this), or the feature can be turned off and no mail will be sent at all (SysV can't do this either).  
  
-When specifying day of week, both day 0 and day 7 will be  
-considered Sunday. BSD and ATT seem to disagree about  
-this
+All of the `@' commands that can appear in place of the first five fields are extensions
  
-  
-Lists and ranges are allowed to co-exist in the same field.  
-  
-  
-Ranges can include  
-  
-  
-Names of months or days of the week can be specified by  
-name.  
-  
-  
-Environment variables can be set in the crontab. In BSD or  
-ATT, the environment handed to child processes is basically  
-the one from /etc/rc.  
-  
-  
-Command output is mailed to the crontab owner (BSD can't do  
-this), can be mailed to a person other than the crontab  
-owner (SysV can't do this), or the feature can be turned off  
-and no mail will be sent at all (SysV can't do this  
-either).  
-  
-  
-All of the `@' commands that can appear in place of the  
-first five fields are extensions.  
 !!AUTHOR 
-  
  
 Paul Vixie 
-----  
This page is a man page (or other imported legacy content). We are unable to automatically determine the license status of this page.