linux系统下的调度任务分为两类:系统任务调度和用户任务调度。
系统任务调度:系统周期性要执行的工作,比如写缓存数据到硬盘,磁盘清理等,系统/etc 目录下有一个crontab文件,就是系统的定时任务执行的配置
语法
crontab(选项)(参数)
选项
-e:编辑该用户的计时器任务;
-l:列出该用户的定时器任务列表;
-r:删除该用户的计时器任务;
-u<用户名称>:指定要设定计时器的用户名称。
参数
crontab文件:指定包含待执行任务的crontab文件。
crontab文件的含义:
用户所建立的craontab文件中,每一行都代表一项定时任务,每行的每个字段代表一项配置,格式是六个字段,前五个是时间设定字段,第六个是要执行的命令。
minute hour day month week command
minute:分钟,是0-59之间的任何整数
hour:小时,是0-23之间的任何整数
day:日期,是1-31之间的任何整数
month:月份,是1-12之间的任何整数
week:星期几,是0-7之间的任何整数
command:可以是系统命令,也可以是自己写的脚本命令。
举例:
10 23 * * * /home/restart.sh
每晚的2 3: 10运行/home/目录下的restart.sh。
45 4 1,10,22 * * /home/restart.sh
每月1、1 0、2 2日的4 : 4 5运行/home/目录下的restart.sh。
10 1 * * 6,0 /bin/find -name "core" -exec rm {} ;
每周六、周日的1 : 1 0运行一个find命令。
0,30 18-23 * * * /apps/bin/dbcheck.sh
在每天1 8 : 0 0至2 3 : 0 0之间每隔3 0分钟运行/apps/bin目录下的dbcheck.sh。
0 23 * * 6 /apps/bin/qtrend.sh
每星期六的11 : 0 0 p m运行/apps/bin目录下的qtrend.sh。