crontab 是linux系统内置的任务调度程序, 可以自定义任务调度在指定的时间段调用指定的 shell 命令

配置文件

crontab 配置文件位置: /var/spool/cron/

使用方法

Options:
 -u <user>  define user
 -e         edit user's crontab
 -l         list user's crontab
 -r         delete user's crontab
 -i         prompt before deleting
 -n <host>  set host in cluster to run users' crontabs
 -c         get host in cluster to run users' crontabs
 -s         selinux context
 -x <mask>  enable debugging
 

常用示例

# 为一个用户指定任务文件, 执行之后, 会同步在 /var/spool/cron/ 文件夹内创建相同的配置
# crontab [-u user] file 
$ crontab -u gomyck gomyck_cron

# 指定一个文件为当前 crontab 的调度配置文件
# 相当于使用了 crontab -e, 并把 fileName 中的配置替换进去
$ crontab fileName

# 编辑当前用户的调度文件
$ crontab -e

# 查看当前用户的调度配置
$ crontab -l

cron 表达式

Cron Express:
 .---------------- 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 
 |  |  |  |  |            
 *  *  *  *  *  [who(用户)] [command(执行脚本) | run-parts(执行指定文件夹下的脚本)] 

常用 cron 配置示例

# 每小时(第一分钟)执行/etc/gomyck内的脚本
01 * * * * root run-parts /etc/gomyck

# 每两个小时, 以 root 用户执行 echo
0 */2 * * * root echo "Hello" >> /home/demo.txt  

# 10 点 10 分执行两个命令, 命令之间以 ; 间隔
10 10 * * * (rm -rf /var/demo.txt;touch demo.txt) 



相关文章:
⤧  上一篇 zsh 安装使用 ⤧  下一篇 记一次正则的实践(先行断言, 后行断言, 贪婪/懒惰匹配)