博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Linux下的计划任务 crontab

Posted on 2012-05-03 15:19  nobile.amir  阅读(766)  评论(0编辑  收藏  举报

Linux下的计划任务 crontab

 

cronlinux用来定期执行程序的命令。当安装完成操作系统之后,默认便会启动此任务调度命令。cron命令每分锺会定期检查是否有要执行的工作,如果有要执行的工作便会自动执行该工作。而linux任务调度的工作主要分为以下两类:
1、系统执行的工作:系统周期性所要执行的工作,如备份系统数据、清理缓存
2、个人执行的工作:某个用户定期要做的工作,例如每隔10分钟检查邮件服务器是 否有新信,这些工作可由每个用户自行设置。 

 

Logsky:/home/run # crontab -help

crontab: usage error: file name must be specified for replace

usage:  crontab [-u user] file

        crontab [-u user] [ -e | -l | -r ]

                (default operation is replace, per 1003.2)

        -e      (edit user's crontab)  # 定制一个计划任务

        -l      (list user's crontab)  # 查看当前计划任务列表

        -r      (delete user's crontab) # 删除任务列表

 

基本格式:

Logsky:/home/run # crontab -e  * * * * */home/run/test.sh > /dev/null  2>&1

 

*   *   *   *  *    /home/run/test.sh > /dev/null  2>&1

分  时 日 月 周 命令

1列表示分钟159 每分钟用*或者 */1表示

2列表示小时1230表示0点)

3列表示日期131

4列表示月份112

5列标识号星期060表示星期天)

6列要运行的命令

对于不指定的字段,要用*来填补其位置。 

 

cron服务每分钟不仅要读一次/var/spool/cron内的所有文件,还需要读一次/etc/crontab,因此我们配置这个文件也能运用cron服务做一些事情。用crontab配置是针对某个用户的,而编辑/etc/crontab是针对系统的任务。此文件的文件格式是


SHELL=/bin/sh

PATH=/usr/bin:/usr/sbin:/sbin:/bin:/usr/lib/news/bin

MAILTO=root

#

# check scripts in cron.hourly, cron.daily, cron.weekly, and cron.monthly

#

-*/15 * * * *   root  test -x /usr/lib/cron/run-crons && /usr/lib/cron/run-crons >/dev/null 2>&1

 

引荐一些例子:

 

 

1、指定每5分钟执行一次ls命令
*/5 * * * * ls
2、指定每天的 5:30 执行ls命令
30 5 * * * ls
3、指定每月8号的730分执行ls命令
30 7 8 * * ls
4、指定每年的68530执行ls命令
30 5 8 6 * ls
5、指定每星期日的6:30执行ls命令
30 6 * * 0 ls
注:0表示星期天,1表示星期1,以此类推,也可以用英文来表示,sun表示星期天,mon表示星期一等。
6、每月10号及20号的330执行ls命令
30 3 10,20 * * ls
注:用来连接多个不连续的时段
7、每天8-11点的第25分钟执行ls命令
25 8-11 * * * ls
注:-用来连接连续的时段
8、每15分钟执行一次ls命令
*/15 * * * * ls
即每个小时的第0 15 30 45 60分钟执行ls命令 
9、每个月中,每隔106:30执行一次ls命令
30 6 */10 * * ls
即每月的1112131日是的630执行一次ls命令。
10、每天750root 身份执行/etc/cron.daily目录中的所有可执行文件
50 7 * * * root run-parts /etc/cron.daily
注:run-parts参数表示,执行后面目录中的所有可执行文件。 

 

 

http://www.cnblogs.com/qingteng1983/archive/2010/07/22/1782639.html 

http://www.linuxso.com/command/crontab.html 

http://www.cnblogs.com/jiafan/articles/1153066.html