您的位置:首页 > 运维架构 > Linux

Linux:计划任务之cron

2010-01-25 14:29 281 查看
cron:

liunx上计划任务的系统级别、后台执行守护程序;最基本的liunx服务之一!!!

它每一分钟都会检查配置文件的变动情况

它每一分钟都会根据配置文件信息检查任务的执行情况

cron支持多个位置的配置文件:

/var/spool/cron/crontabs/*:每分钟检查一次变动;每个用户有自己单独的配置文件;通过crontab命令编辑配置文件!

/etc/crontab:实时监控;全局配置文件;与之配合的是cron.hourly、cron.daily、cron.weekly、cron.monthly目录下的run-parts任务目录

/etc/cron.d/*:实时监控;全局配置文件

/var/spool/cron/crontabs/*下配置文件的语法、格式:

时间安排部分:支持:域值、列表、范围:使用逗号分隔;高级的有:间隔和别名

第一段:分钟:0-59

第二段:小时:1-23

第三段:日期:1-31

第四段:月份:1-12:可以使用文字名称

第五段:星期:0-7:0和7都表示星期日:可以使用文字名称

任务命令部分:任何有效命令或脚本

第六段:任务命令:任何有效命令或脚本

注:

crontab命令总是会更新用户计划任务配置文件的修改时间

配置文件中可以设置需要的环境变量

各段之间使用空格分隔

时间段的月、星期可以使用文字标识

时间段的间隔“/n”、以及时间段的别名不是所有的linux系统都遵循的扩展用法

特殊的时间别名: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, "0 0 1 1 *".

@annually (same as @yearly)

@monthly Run once a month, "0 0 1 * *".

@weekly Run once a week, "0 0 * * 0".

@daily Run once a day, "0 0 * * *".

@midnight (same as @daily)

@hourly Run once an hour, "0 * * * *".

/etc/crontab、/etc/cron.d/*下配置文件的语法、格式:

基本上和用户的配置文件相同,除了在命令段前有一个标识任务所属用户的用户字段

计划任务的用户控制:

/etc/cron.allow:最高优先级文件,只有在列表内的用户才可以使用crontab命令配置自己的计划任务

/etc/cron.deny:次级文件,如果cron.allow文件不存在,只有不在列表内的用户才可以使用crontab命令配置自己的计划任务

:如果cron.allow、cron.deny均不存在,得看系统的默认配置是什么,对ubuntu来说,所有用户都可以使用crontab!

crontab配置命令:

crontab [-u user] file #不知道是何种用法?

crontab [-u user] {-e(编辑用户配置文件)|-l(列出用户的计划任务)|-r(清除用户计划任务)}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: