Crontab每一个半小时执行一次脚本写法

前段时间面试的时候,突然被问到一个问题,“在Linux中,如果有一个脚本,需要每隔一个半小时执行一次,应该怎么写?”

一时间没有回答上来,后面回来之后,想了一下才搞明白。

先把所有的执行脚本的执行时间列出来,就明白是怎么回事了。

01:30 03:00
04:30 06:00
07:30 09:00
10:30 12:00
13:30 15:00
16:30 18:00
19:30 21:00
22:30 00:00

把所有的执行时间分成两列,这就容易找到规律了。

整点的时间和整30分的时间跟下面的时间都是相差3个小时

所以需要分成两次来写

1 30 1-23/3 * * * xxxx.sh      #这个对应左边的执行时间
2 0 0-23/3 * * * xxxx.sh       #这个对应右边的执行时间

之前的写法都是一行就搞定了,因为一行就能够完成所需的要求,所以便先入为主的以为,一个任务只能写一行crontab。差点把自己给困住了。

如果一行不能满足需求,可以拆成两行,甚至三行来写,只要找到其中的规律即可。

原文地址:https://www.cnblogs.com/rainights/p/12573197.html

时间: 2024-10-01 21:47:41

Crontab每一个半小时执行一次脚本写法的相关文章

Quartz 设置一个半小时任务实现

该文章属于本人原创,转载请注明出处. spring + Quartz 设置定时任务时要求没一个半小时执行一次 设置两个相同的定时任务 第一个从整点开始每三小时执行一次 <!--每三小时执行一次任务,从整点开始--> <property name ="cronExpression" value="0 0 0/3 * * ?"></property> 第二个从一个半小时后开始每三小时执行一次 <!--每三小时执行一次任务,从一个

【Linux】crontab 每隔1小时 2小时的执行job写法

crontab -l crontab -e 每五分钟执行  */5 * * * * 每小时执行     0 * * * * 每2小时执行     0 */2 * * * 每天执行        0 0 * * * 每周执行       0 0 * * 0 每月执行        0 0 1 * * 每年执行       0 0 1 1 * 星号(*):代表所有可能的值,例如month字段如果是星号,则表示在满足其它字段的制约条件后每月都执行该命令操作. 逗号(,):可以用逗号隔开的值指定一个列表

shell if判断(曾经被一个字符串相等的判断纠结半小时,最后只是if后少了个空格!) 和 awk引用外部变量判断

一.if判断 数字: $A=12 $B=15 if(("$A"<"$B")) if(("$A"=="$B")) 字符串: $A="HELLO" $B="WORLD" if [ "$A" = "FACT_LOGIN_USER" ] if [ "$A" = "$B" ] PS:字符串比较的时候注意 'if'

【视频】半小时内编写一个贪吃蛇游戏

贪吃蛇编写提纲 致谢: 感谢 Ronnie Mooney ,我是在学习了他的视频后完成这个视频的,你可以在 [C#] Creating a Snake Game - Less than an Hour 找到他的视频(需翻墙,请自备梯子). 编写 Input 静态类 初始化静态变量 private static readonly Hashtable _keys = new Hashtable() 编写方法 public static void ChangeState(Keys key, bool

每篇半小时1天入门MongoDB——2.MongoDB环境变量配置和Shell操作

上一篇:每篇半小时1天入门MongoDB——1.MongoDB介绍和安装 配置环境变量 Win10系统为例 右键单击“此电脑”——属性——高级系统设置——高级——环境变量,添加C:\Program Files\MongoDB\Server\3.0\bin;.注意:要以;隔开各种变量. 这样的话就可以直接在CMD命令窗口中输入mongo 表示环境变量设置成功,并已经连接到默认数据库test中. 我们可以输入mongod --help来查看相关的帮助信息 C:\Users\zouqi>mongod

半小时入门Angular 2

本文首发于由电子工业出版社出版<揭秘Angular 2>一书,基于第5章概览改写. 作者简介:广发证券互联网金融技术团队,是Angular早期坚定的践行者.作为全新一代的证券业 IT 研发组织,团队致力于用更新更好的技术打造行业方案.支持业务创新. 责编:陈秋歌,寻求报道或者投稿请发邮件至chenqg#csdn.net,或加微信:Rachel_qg. 了解更多前沿技术资讯,获取深度技术文章推荐,请关注CSDN研发频道微博. Angular 2.0 于去年 9 月正式发布. 尽管同一时间里 Re

半小时快速了解redis,基于ubuntu 12.04 + redis 2.8.9

一.什么是redis ? 其官方介绍是: Redis is what is called a key-value store, often referred to as a NoSQL database. Redis is an open source, BSD licensed, advanced key-value store. It is often referred to as a data structure server sincekeys can contain strings, 

一个日志按照小时的格式化输出脚本

#!/bin/bash #使用前请先创建一个路径文件夹/tmp/weblog #确定当前时间,即脚本执行日的0时 time=`date "+%y%m%d:%H"` #定位日志时间格式为:20140624:00 date1="20$time" #开启死循环,每小时筛选一次日志,并输出 while :;do #获取当前时间,作为每次循环的1小时日志名 n=`date` #记录循环次数变量count count=0 #等待日志输出3600,即1小时 sleep 3600

使用crontab,让linux定时执行shell脚本

阅读目录 1. cron服务[Ubuntu环境] 2. crontab用法 3. 编辑crontab文件 4. 流程举例 5. 几个例子 Linux中,周期执行的任务一般由cron这个守护进程来处理.cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间.cron的配置文件称为“crontab”,是“cron table”的简写. 1. cron服务[Ubuntu环境] 查看cron状态 sudo  service cron status 开启cron sudo /etc/ini