Linux怎么使用crontab设置定任务
定时任务介绍和使用
- 让系统在将来的指定时间点执行某些任务(程序)
- 可以周期性执行也可以仅仅执行一次
系统计划任务配置相关文件:
/etc/cron.d/
/etc/cron.d/0hourly 系统每小时第一分钟需要执行的任务
/etc/cron.deny 用户拒绝列表(在该文件中的用户不能使用cron服务)
/etc/crontab 该文件的作用相当于/etc/cron.d/下面的某一个文件,可以定义系统计划任务
/etc/cron.monthly/ 存放系统每个月需要执行的脚本
/etc/cron.weekly/ 存放系统每周需要执行的脚本
/etc/cron.daily/ 存放系统每天需要执行的脚本
/etc/cron.hourly/ 存放系统每小时需要执行的脚本
/var/spool/cron 这个目录用来存放各个用户自己设定的定时任务,普通用户没有权限直接访问
计划任务周期编写:
* * * * *
前5个字段分别表示:
分钟:0-59
小时:0-23
日期:1-31
月份:1-12
星期:0-7(0表示周日或者7表示周日)
一些特殊符号:
, 表示分割,间隔
- 表示一个段
/n 表示每个n的单位执行一次
run-parts:
crond用这个工具来执行某个目录下所有的可执行脚本,定时任务中的每小时/每天/每周/每月任务就是通过这个工具来触发
的.
创建、查看、删除计划任务
- 修改配置文件 /etc/crontab 管理员root----> 指定执行任务用户
- 让用户自己使用命令创建 crontab
用户编辑自己的定时任务
crontab -e 编辑当前用户自己的定时任务(使用环境变量EDITOR指定的默认编辑器)
crontab -l 列出当前用户自己所有的定时任务
crontab -r 删除当前用户自己所有的定时任务
管理员编写其他用户的定时任务
crontab -e -u redhat 编辑指定用户的定时任务(使用环境变量EDITOR指定的默认编辑器)
crontab -l -u redhat 列出指定用户所有的定时任务
crontab -r -u redhat 删除指定用户所有的定时任务
案例
礼拜1和礼拜3每隔2个小时去执行一个任务
00 */2 * * 1,3 [执行任务命令]
每个月的1号到15号,和25号的早上8:00到晚上6:00每隔2小时执行一个任务
00 08-18/2 1-15,25 * * [执行任务命令]
版权声明:本文为weixin_45568391原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。