android linux 定时任务,Linux crond定时任务服务

Linux的定时任务服务crond(crontab)

crond是什么?

crond是linux系统中用来定期执行命令或指定程序任务的一种服务或者软件。

一般在我们安装完C5/C6系统的时候,crond就会默认存在了。

crond服务默认情况(每分钟),会检查系统中是否有需要执行的定时任务,如果有就会根据事先定义好的规则来执行这个定时任务。如:root用户的定时任务配置文为/var/spool/cron/root。

crond服务=闹钟

默认情况下,当用户建立定时任务规则后,该规则记录对应的配置文件会存在于/var/spool/cron中,其crontab配置文件对应的文件名与登录的用户名一致,

crontab定时任务的书写格式很简单,用户的定时任务规则一般分为6个段(每个段通过空格来分隔,系统的定时任务为/etc/crontab,分为8段,空格来分隔),前五段时间的设定段,第六段为所要执行的命令或脚本任务段。

相关配置文件:

/var/spool/cron/ 目录下存放的是每个用户包括root的crontab任务,每个任务以创建者的名字命名

/etc/crontab 这个文件负责调度各种管理和维护任务。

/etc/cron.d/ 这个目录用来存放任何要执行的crontab文件或脚本。

我们还可以把脚本放在/etc/con.hourly、/etc/con.daily、/etc/con.weekly、/etc/con.monthly目录中,让它每小时/天/星期、月执行一次。

/etc/cron.deny 该文件中所列用户不允许使用ctrontab命令。

/etc/cron.allow 该文件中所列用户允许使用crontab命令,优先于/etc/cron.deny

常用命令说明:参数含义示例

-l(字母)查看crontab文件内容。提示:l可理解为list的缩写。crontab -l***

-e编辑crontab文件内容,提示:e可理解为edit的缩写。crontab -e***

-i删除crontab文件内容,删除前会提示确认。用的很少。crontab -ri

-r删除crontab文件内容,用的很少。crontab -r

-u user指定使用的用户执行任务。crontab -u zdw -l

特别强调:-i,-r参数在生产中很少用,没什么需求必须要用-e进去编辑即可。

我们用crontab -e进入当前用户的工作表编辑,(crontab -e编辑会检查语法,而直接echo,vi编辑则不会检查语法。)每一行是一条编辑命令。

查看/etc/crontab文件

解释上图,crontab语法格式中时间段的含义如下:段含义取值范围

第一段代表分钟00--59

第二段代表小时00--23

第三段代表日,天01--31

第四段代表月份01--12

第五段代表星期,周几0--7(0和7都代表周日)

时间记忆口决:分时日月周

crontab语法格式中特殊符号含义如下表:特殊符号含义

**号,表示任意时间,实际就是“每”时间的意思。举例:如00 23 * * * cmd表示每月每周每日23:00都执行cmd任务。需要注意的是:每个时间位上的*表示每,如果位上是*就是该位上时间的取值范围,例如:小时上的*等价于2021年05月14日。

经验:定时任务规则如果到小时,就最多提到每天。不用说周等。

分位上的*就等价于2021年05月14日

-减号,表示分隔符,表示一个时间范围,区间段,如果2021年05月14日点,每天的17,18,19的00分执行任务。00 2021年05月14日 * * * cmd。就是17,18,19点整点分别执行的意思。

,逗号,表示分隔时段的意思。30 17,18,19 * * * /bin/sh /scripts/zdw.sh表示每天17、18和19点的半点时刻执行/scripts/zdw.sh脚本。也可以和“-”结合使用,例如30 2021年05月14日,2021年05月14日 * * * /bin/sh /scripts/zdw.sh

/nn代表数字,即“每隔n单位时间”,例如:每10分钟执行一次任务可以写

成*/10 * * * *,其中,*/10,*的范围是2021年05月14日,因此,也可以写成2021年05月14日/10。

我们如果创建了定时任务,但没有执行,需要查看crond服务不否启动,如没有启动,需要启动后才能使用定时任务。

查看和开启定时任务:

命令示例:

1.30 3,12 * * * /bin/sh /scripts/zdw.sh

在本例中,第一列为30,表示30分钟,第二列为3,12,这代表3点及12点,此定时任务的意思是每天凌晨3点和中午12点的半点时刻(或描述为每天凌晨3:30和中午12:30)执行/scripts/zdw.sh脚本。

2.30 */6 * * * /bin/sh /scripts/zdw.sh

其中的第一列为30,表示30分钟,第二列*/6代表每6个小时,也相当于6,12,18,24的作用。

此定时任务的意思是每隔6个小时的半点时刻执行/scripts/zdw.sh脚本任务。

3.30 2021年05月14日/2 * * * /bin/sh /scripts/zdw.sh

其中的第一列为30,表示30分钟,第二列8-2021年05月14日代表在早晨8点到下午18点之间每隔2小时,也相当于8,10,12,14,16,18单独列出的作用。

那么,此定时任务的意思就是早晨8点到下午18点之间每隔2小时的30分钟时刻执行/scripts/zdw.sh脚本任务。

4.30 21 * * * /application/apache/bin/apachectl graceful

上面的例子表示每晚的21:30重启apache。

5.45 4 1,10,22 * * /application/apache/bin/apachectl graceful

上面的例子表示每月1、10、22日凌晨4:45分重启apache。

6.10 1 ** 6,0 /application/apache/bin/apachectl graceful

上面的例子表示每周六、周日凌晨1:10分重启apache。

7.0,30 2021年05月14日 * * * /application/apache/bin/apachectl graceful

上面的例子表示每天在18:00至23:00之间每隔30分钟重启apache。

8.00 */1 * * * /application/apache/bin/apachectl graceful

上面的例子表示每隔一小时整点重启apache。

9.00 11 * 4 2021年05月14日 /application/apache/bin/apachectl graceful

上面的例子表示4月的每周一到周三的上午11点整重启apache。

强调:周和日尽量不要同时用,否则可能达不到想要的效果。

日志存放位置及查看结果:

本文转自cix123  51CTO博客,原文链接:http://blog.51cto.com/zhaodongwei/1770349,如需转载请自行联系原作者

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值