Results 1 to 4 of 4

Thread: crontab

  1. #1
    Join Date
    Aug 2008

    Unanswered: crontab

    how do you run a script in crontab ? what does each value mean in crontab ?

  2. #2
    Join Date
    May 2003
    This is a DB2 forum, not a Linux/UNIX forum. Try googling for more information. One good site is Wikipedia.
    M. A. Feldman
    IBM Certified DBA on DB2 for Linux, UNIX, and Windows
    IBM Certified DBA on DB2 for z/OS and OS/390

  3. #3
    Join Date
    Sep 2004
    Quote Originally Posted by yash2400
    how do you run a script in crontab ? what does each value mean in crontab ?
    Just use "crontab -e" to add a entry to your scheduled jobs (see below for the expected syntax of the crontab lines).
    Beware that the script (6th field) will be run in a "minimal" environment, i.e., most variables (esp. DB2 ones) need to be set by the script itself!

    Using the unix "man" command gives me:

    $ man 5 crontab
    CRONTAB(5)                                                          CRONTAB(5)
           crontab - tables for driving cron (ISC Cron V4.1)
           A  crontab file contains instructions to the cron(8) daemon of the gen-
           eral form: ``run this command at this time on this date''.   Each  user
           has  their  own crontab, and commands in any given crontab will be exe-
           cuted 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 pound-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, com-
           ments are not allowed on the same line  as  environment  variable  set-
           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 subse-
           quent 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.  HOME and SHELL may be over-
           ridden by settings in the crontab; LOGNAME may not.
           (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.
           This  option  is  useful  if  you  decide  on  /bin/mail   instead   of
           /usr/lib/sendmail  as  your  mailer  when you install cron -- /bin/mail
           doesn't do aliasing, and UUCP usually doesn't read its mail.
           The format of a cron command is very much the V7 standard, with a  num-
           ber  of upward-compatible extensions.  Each line has five time and date
           fields, followed by a user name if this is  the  system  crontab  file,
           followed  by  a  command.   Commands  are  executed by cron(8) when the
           minute, hour, and month of year fields match the current time,  and  at
           least  one  of  the two day fields (day of month, or day of week) match
           the current time (see ``Note'' below).  Note that this means that  non-
           existent times, such as "missing hours" during daylight savings conver-
           sion, will never match, causing  jobs  scheduled  during  the  "missing
           times"  not  to  be  run.   Similarly,  times that occur more than once
           (again, during daylight savings conversion) will cause matching jobs to
           be run twice.
           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)
           A field may be an asterisk (*), which always stands for ``first-last''.
           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''.
           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, ``0-23/2'' can be used in the hours field to spec-
           ify command execution every other hour (the alternative in the V7 stan-
           dard  is ``0,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
           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 charac-
           ters, 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 cur-
           rent 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.
           # use /bin/sh to run commands, no matter what /etc/passwd says
           # mail any output to `paul', no matter whose crontab this is
           # run five minutes after midnight, every day
           5 0 * * *       $HOME/bin/daily.job >> $HOME/tmp/out 2>&1
           # run at 2:15pm on the first of every month -- output mailed to paul
           15 14 1 * *     $HOME/bin/monthly
           # run at 10 pm on weekdays, annoy Joe
           0 22 * * 1-5   mail -s "It's 10pm" joe%Joe,%%Where are your kids?%
           23 0-23/2 * * * echo "run 23 minutes after midn, 2am, 4am ..., everyday"
           5 4 * * sun     echo "run at 5 after 4 every sunday"
           cron(8), crontab(1)
           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
           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).
           These  special  time  specification  "nicknames"  are  supported, which
           replace the 5 initial time and date fields, and are prefixed by the '@'
           @reboot    :    Run once, at startup.
           @yearly    :    Run once a year, ie.  "0 0 1 1 *".
           @annually  :    Run once a year, ie.  "0 0 1 1 *".
           @monthly   :    Run once a month, ie. "0 0 1 * *".
           @weekly    :    Run once a week, ie.  "0 0 * * 0".
           @daily     :    Run once a day, ie.   "0 0 * * *".
           @hourly    :    Run once an hour, ie. "0 * * * *".
           If  the  command  string  starts with -q, this prefix is removed before
           passing the string to the shell and the command is not logged.
           In this version of cron, /etc/crontab must not be writable by any  user
           other  than  root.   No crontab files may be links, or linked to by any
           other file.  No crontab files may be executable, or be writable by  any
           user other than their owner.
           Paul Vixie <>
    5th Berkeley Distribution       24 January 1994                     CRONTAB(5)
    --_Peter Vanroose,
    __IBM Certified Database Administrator, DB2 9 for z/OS
    __IBM Certified Application Developer
    __ABIS Training and Consulting

  4. #4
    Join Date
    May 2003
    Please don't answer questions like that. Although your motives are commendable, it basically encourages off-topic posts, and promotes laziness by those who cannot even bother to search for the most rudimentary information about the subject.
    M. A. Feldman
    IBM Certified DBA on DB2 for Linux, UNIX, and Windows
    IBM Certified DBA on DB2 for z/OS and OS/390

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts