cron命令笔记
1.cron 服务操作:
/sbin/service crond start //启动服务
/sbin/service crond stop //关闭服务
/sbin/service crond restart //重启服务
/sbin/service crond reload //重新载入配置
也可以将这个服务在系统启动的时候自动启动:
在/etc/rc.d/rc.local这个脚本的末尾加上:
/sbin/service crond start
2.查看crontab 进程:
# ps aux |grep cron
root 853 0.0 0.3 1980 804 ? Ss 19:13 0:00 anacron -s
root 2050 0.0 0.3 2376 892 ? Ss 19:18 0:00 cron
3.命令格式
crontab命令的功能是在一定的时间间隔调度一些命令的执行。在/etc目录下有一个crontab文件,这里存放有系统运行的一些调度程序。每个用户可以建立自己的调度crontab。
crontab命令有三种形式的命令行结构:
crontab [-u user] [file]
crontab [-u user] [-e|-l|-r]
-u选项一般由root用户来指定某个用户的计划任务时使用。
命令行中-r选项的作用是从/usr/spool/cron/crontabs目录下删除用户定义的文件crontab,执行命令crontab -u user -r即可删除当前用户的所有的cron作业。
命令行中-l选项的作用是显示用户crontab文件的内容。
使用命令crontab -u user -e命令编辑用户user的cron(c)作业。用户通过编辑文件来增加或修改任何作业请求。
作业与它们预定的时间储存在文件/usr/spool/cron/crontabs/username里。username使用户名,在相应的文件中存放着该用户所要运行的命令。命令执行的结果,无论是标准输出还是错误输出,都将以邮件形式发给用户。文件里的每一个请求必须包含以spaces和tabs分割的六个域。前五个字段可以取整数值,指定何时开始工作,第六个域是字符串,称为命令字段,其中包括了crontab调度执行的命令
命令格式
# m h dom mon dow command
01 11 * * * /home/devilkin/shellstudy/sysinfor.sh
第一到第五个字段的整数取值范围及意义是:
0~59 表示分
1~23 表示小时
1~31 表示日
1~12 表示月份
0~6 表示星期(其中0表示星期日)
除了数字还有几个个特殊的符号就是"*"、"/"和"-"、",",*代表所有的取值范围内的数字,"/"代表每的意思,"*/5"表示每5个单位,"-"代表从某个数字到某个数字,","分开几个离散的数字
4.实例:
每周5的八点到10点
* 8-10 * * 5 echo hehe
每个月5号的1点到早上8点每2个小时
* 1-8/2 5 * * echo haha
每周5下午4点
*16 * * 5 echo Cx report.sh
/usr/lib/cron/cron.allow表示谁能使用crontab命令。如果它是一个空文件表明没有一个用户能安排作业。如果这个文件不存在,而有另外一个文件/usr/lib/cron/cron.deny,则只有不包括在这个文件中的用户才可以使用crontab命令。如果它是一个空文件表明任何用户都可安排作业。两个文件同时存在时cron.allow优先,如果都不存在,只有超级用户可以安排作业。
cron 服务每分钟去读取crontab文件,所以编辑好crontab后不需要重新启动服务。
阅读(1974) | 评论(0) | 转发(0) |