crontab

crontab

minute hour day month week user-name command

minute---分钟 (0-59)

  hour------小时(0-23)

  day--------日期(1-31)

  month---月份(1-12)

  week----星期(0-6) //0代表星期天

  除了数字还有几个个特殊的符号就是"*"、"/"和"-"、",",*代表所有的取值范围内的数字,"/"代表每的意思,"*/5"表示每5个单位,"-"代表从某个数字到某个数字,","分开几个离散的数字。

 

例子:

1 * * * * /home/postgres/pgsql.sh

表示的是每小时的第一分钟执行该脚本

2 3 * * * /home/postgres/pgsql.sh

表示每天的3点零2分执行该脚本

1 1 * * 0 / home/postgres/pgsql.sh

表示的是每周的1点1分进行脚本的执行

1 1 1 * * / home/postgres/pgsql.sh

表示的是每月的1点1分进行脚本的执行

 

比较容易犯的错误是通常会把每小时的第一分钟按做每分钟执行一次,这点要注意两者的区别:

1 * * * * /home/postgres/pgsql.sh

表示的是每小时的第一分钟执行该脚本

*/1 * * * * /home/postgres/pgsql.sh

表示的是每一分钟执行该脚本

因此这里要记住”/”这个符号带来的区别

“-”的用法:

0 10 * * 1-3 / home/postgres/pgsql.sh

表示的是每个周一到周三的早上10点执行该脚本

0 10 * * 1、3、5 / home/postgres/pgsql.sh

表示的是每周的周一、周三、周五的早上10点执行该脚本

这些大致就是定时任务的几乎常见的可能性定时脚本。

在表格中看到user-name这个表示的用户该脚本所在的用户,一般情况下在做项目不可能会有root用户进行编写,所以我们可能直接在普通用户下进行定时脚本的编写,直接执行crontab –e,编写定时任务。

每 次编辑完某个用户的cron设置后,cron自动在/var/spool/cron下生成一个与此用户同名的文件,此用户的cron信息都记录在这个文件 中,这个文件是不可以直接编辑的,只可以用crontab -e 来编辑。cron启动后每过一分钟读一次这个文件,检查是否要执行里面的命令。因此此文件修改后不需要重新启动cron服务。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值