用户想要建立循环型计划任务时,使用crontab命令,为了避免安全性问题,可以限制使用crontab的用户账号。可以使用的配置文件有:
/etc/cron.allow
将可以使用crontab的账号写入其中,不在这个文件内的用户则不可使用crontab。
/etc/cron.deny
将不可以使用crontab的账号写入其中,未记录到这个文件当中的用户,就可以使用crontab。
当用户使用crontab这个命令来建立计划任务之后,该项任务就会被记录到/var/spool/cron/中,而且是以账号来作为判断的依据,例如,用户text使用crontab后,他的任务会被记录到/var/spool/cron/text中,注意,不要使用vim直接编辑该文件,因为可能由于输入语法错误,会导致无法执行cron。另外,cron执行的每一项任务都会被记录到/var/log/cron这个日志文件中。
crontab的语法:
crontab [-u username] [-l | -e | -r]
-u:只有root才能执行这个任务,也可以帮助其他使用者建立/删除crontab 计划任务。
-e: 编辑crontab的任务内容。
-l:查看crontab的任务内容。
-r:删除所有的crontab的任务内容,若仅要删除一项,用-e编辑。
例如:0 12 * * * command
每天12点整执行命令
分钟 小时 日期 月份 周 命令
0-59 0-23 1-31 1-12 0-7 需要执行的命令
注:周的数字为0或7时,都代表“星期天”
特殊符号:
*(星号):代表任何时刻都接受的意思。
,(逗号):代表分割时段的意思。例:如果要执行的任务是3:00与6:00时:
0 3,6 * * * command
-(减号):代表一段时间范围内,例:8点到12点之间的每小时的20分都执行一项任务:
20 8-12 * * * command
/n(斜线):n代表数字,即每隔n单位间隔的意思,例如:每五分钟执行一次,
*/5 * * * * command