ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Crontab - Quick reference

Crontab - Quick reference

原创 Linux操作系统 作者:3344520 时间:2011-07-15 10:36:34 0 删除 编辑

Crontab - Quick reference

Setting up cronjobs in Unix and Solaris

cron is a unix, solaris utility that allows tasks to be automatically run in the background at regular intervals by the cron daemon. These tasks are often termed as cron jobs in unix , solaris.
Crontab (CRON TABle) is a file which contains the schedule of cron entries to be run and at specified times.

1. Crontab Restrictions

You can execute crontab if your name appears in the file
/usr/lib/cron/cron.allow

If that file does not exist, you can use
crontab if your name does not appear in the file
/usr/lib/cron/cron.deny
If only cron.deny exists and is empty, all users can use crontab. If neither file exists, only the root user can use crontab. The allow/deny files consist of one user name per line.

2. Crontab Commands

export EDITOR=vi ;

to specify a editor to open crontab file.
crontab -e

Edit your crontab file, or create one if it doesn't already exist.
crontab -l

Display your crontab file.
crontab -r

Remove your crontab file.
crontab -v

Display the last time you edited your crontab file. (This option is only available on a few systems.)

3. Crontab file

Crontab syntax :
A crontab file has five fields for specifying day , date and time followed by the command to be run at that interval.

* * * * * command to be executed
- - - - -
| | | | |
| | | | +----- day of week (0 - 6) (Sunday=0)
| | | +------- month (1 - 12)
| | +--------- day of month (1 - 31)
| +----------- hour (0 - 23)
+------------- min (0 - 59)

* in the value field above means all legal values as in braces for that column.
The value column can have a * or a list of elements separated by commas. An element is either a number in the ranges shown above or two numbers in the range separated by a hyphen (meaning an inclusive range).

Note: The specification of days can be made in two fields: monthday and weekday. If both are specified in an entry, they are cumulative .

4. Crontab Example

A line in crontab file like below removes the tmp files from /home/someuser/tmp each day at 6:30 PM.

30 18 * * * rm /home/someuser/tmp/*

Changing the parameter values as below will cause this command to run at different time schedule below :

min

hour

day/month

month

day/week

Execution time

30

0

1

1,6,12

*

-- 00:30 Hrs on 1st of Jan, June & Dec.

:

0

20

*

10

1-5

--8.00 PM every weekday (Mon-Fri) only in Oct.

:

0

0

1,10,15

*

*

-- midnight on 1st ,10th & 15th of month

:

5,10

0

10

*

1

-- At 12.05,12.10 every Monday & on 10th of every month

:

Note : 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.

5. Crontab Environment

cron invokes the command from the user's HOME directory with the shell, (/usr/bin/sh).
cron supplies a default environment for every shell, defining:
HOME=user's-home-directory
LOGNAME=user's-login-id
PATH=/usr/bin:/usr/sbin:.
SHELL=/usr/bin/sh

Users who desire to have their .profile executed must explicitly do so
in the crontab entry or in a script. called by the entry.

6. Disable Email

By default cron jobs sends a email to the user account executing the cronjob. If this is not needed put the following command At the end of the cron job line .
>/dev/null 2>&1

7. Generate log file

To collect the cron execution execution log in a file :
30 18 * * * rm /home/someuser/tmp/* > /home/someuser/cronlogs/clean_tmp_dir.log

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/20702978/viewspace-702275/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 落户ITPUB
下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2010-02-24

  • 博文量
    2
  • 访问量
    2323

最新文章