linux内置的cron进程能帮我们实现定时任务,搭配shell脚本使用效果显著。
命令:
crontab [-u username] //省略用户表表示操作当前用户的crontab -e (编辑工作表,一行一个命令,主要定义什么时候执行) -l (列出工作表里的命令) -r (删除工作作)输入:
crontab -e 出现编辑页面,vim编辑页。 #每一分钟执行一次 /home/cron/srcript.sh 脚本 , 此脚本使用/bin/sh 解释执行 * * * * * /bin/sh /home/cron/srcript.sh定时表达式简介:
* * * * * 分别代表 : 分钟 小时 日期 月份 周 */10 * * * * 每十分钟执行一次 ,每小时同理srcript.sh脚本内容:
#输出内容到 /home/cron/log, 是、使用tail -f /home/cron/log 实时查看日志内容。 >> 追加日志输出到log文件 echo $(date "+%Y-%m-%d %H:%M:%S")'运行了脚本======' >> /home/cron/log保存后输入命令 tail -f /home/cron/log 查看日志: 或者输入 : tail -f /var/log/cron 查看定时执行的任务日志。
停止定时脚本: 直接 crontab -e 把对应的定时命令注释掉 # ,或者删掉。
配置文件:
1,/var/spool/cron/ 目录下存放的是每个用户包括root的crontab任务,每个任务以创建者的名字命名,crontab -e 创建的工作在这里。 2,/etc/crontab 这个文件负责调度各种管理和维护任务。 3,/etc/cron.d/ 这个目录用来存放任何要执行的crontab文件或脚本。 4,我们还可以把脚本放在/etc/cron.hourly、/etc/cron.daily、/etc/cron.weekly、/etc/cron.monthly目录中,让它每小时/天/星期、月执行一次。crond 服务相关命令:
##查看服务状态 /sbin/service crond status ##启动服务 /sbin/service crond start ##关闭服务 /sbin/service crond stop ##重启服务 /sbin/service crond restart ##重新载入配置 /sbin/service crond reload