crontab定时任务
1.命令格式
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) -i (prompt before deleting user's crontab) -s (selinux context)
2.命令参数
- -u user 用来设定某个用户的crontab服务
- file 命令文件的名字。将file作为crontab的任务列表文件并载入crontab。如果在命令行中没有指定这个文件,crontab命令将接受标准输入(键盘)上键入的命令,并将它们载入crontab。
- -e 编辑某个用户的crontab文件内容。如果不指定用户,则表示编辑当前用户的crontab文件。
- -l 显示某个用户的crontab文件内容,如果不指定用户,则表示显示当前用户的crontab文件内容。
- -r 从/var/spool/cron目录中删除某个用户的crontab文件,如果不指定用户,则默认删除当前用户的crontab文件。
3.crontab的文件格式
[root@study ~]# cat /etc/crontab SHELL=/bin/bash <==使用哪種 shell 介面 PATH=/sbin:/bin:/usr/sbin:/usr/bin <==執行檔搜尋路徑 MAILTO=root <==若有額外STDOUT,以 email將資料送給誰 # Example of job definition: # .---------------- minute (0 - 59) # | .------------- hour (0 - 23) # | | .---------- day of month (1 - 31) # | | | .------- month (1 - 12) OR jan,feb,mar,apr ... # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat # | | | | | # * * * * * user-name command to be executed
0 12 * * * mail -s "at 12:00" dmtsai < /home/dmtsai/.bashrc
#分 時 日 月 週 |<==============指令串========================>|
特殊字符:
*(星号):任何时刻都接受的意思。(0 12 * * * 无论何月何日的星期几的12:00都执行指令)
, (逗号):分割时间段。(0 3,6 * * * 3:00和6:00时就会执行指令)
- (减号):一段时间范围。(20 8-12 * * * 8点到12点之间每个小时的20分钟都执行指令)
/num (斜线): num代表数字,即每隔num单位间隔的意思。 (*/5 * * * * 每隔五分钟执行一次指令)