cron是一个服务进程,cron服务提供crontab命令来设定cron服务的,以下是这个命令的一些参数与说明:
crontab -u //设定某个用户的cron服务,一般root用户在执行这个命令的时候需要此参数
crontab -l //列出某个用户cron服务的详细内容
crontab -r //删除某个用户的cron服务
crontab -e //编辑某个用户的cron服务
对应文件:
/etc/cron.deny 该文件中所列的用户不允许使用Crontab命令
/etc/cron.allow 该文件中所列的用户允许使用Crontab命令
/var/spool/cron/ 是所有用户的crontab文件
用户所建立的crontab文件存于/var/spool/cron中,其文件名 与用户名一致。
使用-e后,出现vi界面,此时只需要添加一行格式为 * * * * * 命令,内容:
第一段 代表分钟 0—59
第二段 代表小时 0—23
第三段 代表日期 1—31
第四段 代表月份 1—12
第五段 代表星期几,0代表星期日 0—6
第六段 代表需要执行的操作,一般是shell
有几个特殊的符号就是"*"、"/"和"-"、",",*代表所有的取值范围内的数字,"/"代表每的意思,"-"代表从某个数字到某个数字,","分开几个离散的数字。
eg:
其它常见问题:
创建或修改完自己的cron,可直接执行service crond reload;用于立即生效。
每次执行了两次,查看原因是自己启动了两个crond进程,杀掉其中一个后即正常。
前面四项的关系之间为and的关系,即需要同时满足;但星期那一项与前面月份日期是or的关系(被人称之为“冲突的逻辑”)。
crontab -u //设定某个用户的cron服务,一般root用户在执行这个命令的时候需要此参数
crontab -l //列出某个用户cron服务的详细内容
crontab -r //删除某个用户的cron服务
crontab -e //编辑某个用户的cron服务
对应文件:
/etc/cron.deny 该文件中所列的用户不允许使用Crontab命令
/etc/cron.allow 该文件中所列的用户允许使用Crontab命令
/var/spool/cron/ 是所有用户的crontab文件
用户所建立的crontab文件存于/var/spool/cron中,其文件名 与用户名一致。
使用-e后,出现vi界面,此时只需要添加一行格式为 * * * * * 命令,内容:
第一段 代表分钟 0—59
第二段 代表小时 0—23
第三段 代表日期 1—31
第四段 代表月份 1—12
第五段 代表星期几,0代表星期日 0—6
第六段 代表需要执行的操作,一般是shell
有几个特殊的符号就是"*"、"/"和"-"、",",*代表所有的取值范围内的数字,"/"代表每的意思,"-"代表从某个数字到某个数字,","分开几个离散的数字。
eg:
* * * * * date >> /test
每一分钟都执行一次data命令并追加到根目录下的test文件下
*/2 * * * * date >> /test
每两分钟都执行一次data命令并追加到根目录下的test文件下
5-10 * * * * date >> /test
在每小时5分,6分,7分,8分,9分,10分钟都执行一次data命令并追加到根目录下的test文件下
5,10 * * * * date >> /test
每个小时的第5分钟与第10分钟执行一次data命令并追加到根目录下的test文件下
0 0 * * * date >> /test
每天的凌晨0分执行
其它常见问题:
创建或修改完自己的cron,可直接执行service crond reload;用于立即生效。
每次执行了两次,查看原因是自己启动了两个crond进程,杀掉其中一个后即正常。
前面四项的关系之间为and的关系,即需要同时满足;但星期那一项与前面月份日期是or的关系(被人称之为“冲突的逻辑”)。