Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
crontab(1)			 User Commands			    crontab(1)

       crontab - user crontab file

       crontab [filename]

       crontab [-elr] username

       The crontab utility manages a user's access with	cron (see cron(1M)) by
       copying,	creating, listing, and	removing  crontab  files.  If  invoked
       without options,	crontab	copies the specified file, or the standard in-
       put if no file is specified, into a directory  that  holds  all	users'

       If  crontab  is	invoked	with filename, this will overwrite an existing
       crontab entry for the user that invokes it.

   crontab Access Control
       Users: Access to	crontab	is allowed:

	  o  if	the user's name	appears	in /etc/cron.d/cron.allow.

	  o  if	/etc/cron.d/cron.allow does not	exist and the user's  name  is
	     not in /etc/cron.d/cron.deny.

       Users: Access to	crontab	is denied:

	  o  if	 /etc/cron.d/cron.allow	 exists	 and the user's	name is	not in

	  o  if	/etc/cron.d/cron.allow does not	exist and user's  name	is  in

	  o  if	 neither  file	exists,	only a user with the
	     authorization is allowed to submit	a job.

       Notice that the rules for allow and deny	apply to root only if the  al-
       low/deny	files exist.

       The allow/deny files consist of one user	name per line.

   crontab Entry Format
       A  crontab  file	 consists  of lines of six fields each.	The fields are
       separated by spaces or tabs. The	first five are integer	patterns  that
       specify the following:

       minute (0-59),
       hour (0-23),
       day of the month	(1-31),
       month of	the year (1-12),
       day of the week (0-6 with 0=Sunday).

       Each  of	 these	patterns may be	either an asterisk  (meaning all legal
       values) or a list of elements separated by commas. An element is	either
       a number	or two numbers separated by a minus sign (meaning an inclusive
       range). Note that the specification of days may be made by  two	fields
       (day  of	 the month and day of the week). Both are adhered to if	speci-
       fied as a list of elements. See EXAMPLES.

       The sixth field of a line in a crontab file is a	string	that  is  exe-
       cuted  by the shell at the specified times. A percent character in this
       field (unless escaped by	\) is translated to a NEWLINE character.

       Only the	first line (up to a `%'	or end of line)	of the	command	 field
       is executed by the shell. Other lines are made available	to the command
       as standard input. Any line beginning with a `#'	is a comment and  will
       be ignored. The file should not contain blank lines.

       The  shell  is  invoked	from  your $HOME directory with	an arg0	of sh.
       Users who desire	to have	their .profile executed	must explicitly	do  so
       in  the	crontab	 file.	cron  supplies a default environment for every
       shell, defining HOME, LOGNAME, SHELL(=/bin/sh), TZ, and PATH.  The  de-
       fault PATH for user cron	jobs is	/usr/bin; while	root cron jobs default
       to  /usr/sbin:/usr/bin.	The  default  PATH  can	 be  set  in  /etc/de-
       fault/cron; see cron(1M).

       If  you	do not redirect	the standard output and	standard error of your
       commands, any generated output or errors	will be	mailed to you.

       The following options are supported:

       -e    Edits a copy of the current user's	crontab	file,  or  creates  an
	     empty  file  to  edit  if crontab does not	exist. When editing is
	     complete, the file	is installed as	the user's crontab file. If  a
	     username  is  given, the specified	user's crontab file is edited,
	     rather than the current user's crontab file;  this	 may  only  be
	     done  by  a  user with the authorization.  The
	     environment variable EDITOR determines which  editor  is  invoked
	     with  the -e option. The default editor is	ed(1). Notice that all
	     crontab jobs should be submitted using crontab;  you  should  not
	     add  jobs	by just	editing	the crontab file because cron will not
	     be	aware of changes made this way.

	     If	all lines in the crontab file are  deleted,  the  old  crontab
	     file  will	be restored. The correct way to	delete all lines is to
	     remove the	crontab	file via the -r	option.

       -l    Lists the crontab file for	the invoking user. Only	 a  user  with
	     the authorization can specify a username fol-
	     lowing the	-r or -l options to remove or list the crontab file of
	     the specified user.

       -r    Removes a user's crontab from the crontab directory.

       Example 1: Cleaning up core files

       This example cleans up core files every weekday morning at 3:15 am:

       15 3 * *	1-5 find $HOME -name core 2>/dev/null |	xargs rm -f

       Example 2: Mailing a birthday greeting

       0 12 14 2 * mailx john%Happy Birthday!%Time for lunch.

       Example 3: Specifying days of the month and week

       This example

       0 0 1,15	* 1
       would  run  a command on	the first and fifteenth	of each	month, as well
       as on every Monday.

       To specify days by only one field, the other field should be set	to  *.
       For example:

       0 0 * * 1
       would run a command only	on Mondays.

       See  environ(5) for descriptions	of the following environment variables
       that  affect  the  execution  of	 crontab:  LC_TYPE,  LC_MESSAGES,  and

	     Determine	the  editor to be invoked when the -e option is	speci-
	     fied.  The	default	editor is ed(1). If both the EDITOR and	VISUAL
	     environment  variables  are set, the value	of the VISUAL variable
	     is	selected as the	editor.

       The following exit values are returned:

       0     Successful	completion.

       >0    An	error occurred.

	     main cron directory

	     list of allowed users

	     contains cron default settings

	     list of denied users

	     accounting	information

	     spool area	for crontab

       See attributes(5) for descriptions of the following attributes:

       |      ATTRIBUTE	TYPE	     |	    ATTRIBUTE VALUE	   |
       |Availability		     |SUNWcsu			   |

       atq(1),	 atrm(1),   auths(1),	ed(1),	 sh(1),	  cron(1M),    su(1M),
       auth_attr(4), attributes(5), environ(5)

       If  you inadvertently enter the crontab command with no argument(s), do
       not attempt to get out with Control-d. This removes all entries in your
       crontab file. Instead, exit with	Control-c.

       If  an  authorized user modifies	another	user's crontab file, resulting
       behavior	may be unpredictable. Instead, the super-user should first use
       su(1M) to become	super-user to the other	user's login before making any
       changes to the crontab file.

       When updating cron, check first for existing crontab entries  that  may
       be  scheduled close to the time of the update. Such entries may be lost
       if the update process completes after the  scheduled  event.  This  can
       happen because, when cron is notified by	crontab	to update the internal
       view of a user's	crontab	file, it first removes the user's existing in-
       ternal crontab and any internal scheduled events. Then it reads the new
       crontab file and	rebuilds the internal crontab and  events.  This  last
       step takes time,	especially with	a large	crontab	file, and may complete
       after an	existing crontab entry is scheduled to run if it is  scheduled
       too  close  to the update. To be	safe, start a new job at least 60 sec-
       onds after the current date and time.

SunOS 5.9			  3 Dec	2001			    crontab(1)


Want to link to this manual page? Use this URL:

home | help