crontab用法疑云
crontab的教程里面,一般都说 */N 表示每隔N分钟/小时执行一次。
偶尔的教程里会讲到:这个N应该被60整除才行。
我在网上基本上没有搜到,如果N不被60整除的时候,会是怎样?
问题起因最开始在于:
个人有个crontab任务,希望设置成40分钟执行一次。但是设置了*/40之后发现,任务总是会在整点和40分的时候执行。
查看了下任务设置,并没有设置在整点执行。然而,整点执行之后,隔40分钟之后执行这一点又是符合crontab设置的。
所以,奇怪之处在于,为何整点会执行?
重新设定了一个不会被整除的数:*/47。查看任务,每次执行时打个log。发现:在整点和47分的时候都会执行。
联想到crontab任务的执行标准,是每分钟判断一次某个任务是否应该被执行,那么,crontab的判断标准应该如下:
1. 每分钟执行一次,判断任务是否应该执行;
2. 判断标准为:当前分钟数除以设置分钟数,余数为0则可以执行。
这样,设置为*/40或*/47的时候,在整点时刻(分钟数为00),除以设置分钟数(40和47),余数为0,故均会被执行。
由此可见,某些教程里说的,“设置的N应该被60整除才行”的意思是:如果N能被60整除,则会相当于每隔N分钟执行一次,一个小时正好执行60/N次;如果N不能被60整除,则在能整除和整点(除完余数为0)的时候都会执行。
下面为测试文件,设定为*/23分钟执行。
75 ==> t3 <==
76 Thu Jan 15 10:46:01 CST 2015
77 Thu Jan 15 11:00:01 CST 2015
78 Thu Jan 15 11:23:01 CST 2015
79 Thu Jan 15 11:46:01 CST 2015
80 Thu Jan 15 12:00:01 CST 2015
81 Thu Jan 15 12:23:01 CST 2015
82 Thu Jan 15 12:46:01 CST 2015
83 Thu Jan 15 13:00:01 CST 2015
84 Thu Jan 15 13:23:01 CST 2015
85 Thu Jan 15 13:46:01 CST 2015
crontab用法疑云相关推荐
- crontab用法与实例
crontab用法与实例 本文基于 ubuntu 18.04 在Linux系统的实际使用中,可能会经常碰到让系统在某个特定时间执行某些任务的情况,比如定时采集服务器的状态信息.负载状况:定时执行某些任 ...
- linux下crontab命令的用法,linux 定时任务crontab用法详解
linux 定时任务crontab用法详解 linux中crontab命令用于设置周期性被执行的指令,该命令从标准输入设备读取指令,并将其存放于"crontab"文件中,以供之后读 ...
- crontab的用法 linux,linux下定时执行任务的方法及crontab 用法说明(收集整理)
linux下定时执行任务的方法 在LINUX中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron].cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时 ...
- linux的crontab用法与实例
linux的crontab用法与实例 crontab的适用场景 在Linux系统的实际使用中,可能会经常让系统在某个特定时间执行某些任务的情况,比如定时采集服务器的状态信息.负载状况:定时执行某些任务 ...
- Linux crontab用法
crontab用法 crontab可以定时执行某些操作,很实用. 通常Linux系统都已经自带. 用法 $ crontab -h crontab: invalid option -- 'h' cron ...
- crontab 用法
cron用法说明 cron的用法老是记不住,索性写下来备忘.下文内容大部分是根据<Cron Help Guide>翻译而来,有些部分是自己加上的. 全文如下: cron来源于希腊单词chr ...
- linux中写crontab脚本,Linux中crond服务与crontab用法
需要写个在Linux下定时更新系统的脚本,man crondtab 不甚详细,现将网络上的介绍列举如下: crontab是一个很方便的在unix/linux系统上定时(循环)执行某个任务的程序使用cr ...
- crontab用法 时间配置_Linux指定的时间运行自定义命令的两种方式
如何在Linux中在指定的时间运行自定义命令 不知道大家有没有这样类似的经历,使用诸如rsync将一个大文件传输到局域网的另一个系统. 由于文件比较大,耗费的时间可能达到小时级别.这时我们可能就会想能 ...
- shell编程中crontab用法超级详解!
使用crontab你可以在指定的时间执行一个shell脚本或者一系列Linux命令. 时间格式:{minute} {hour} {day-of-month} {month} {day-of-week} ...
最新文章
- 暴力 + 贪心 --- Codeforces 558C : Amr and Chemistry
- java中的daemon thread
- 关于工程技术中PE、ME、TE、IE、EE的解说
- C# 客户端内存优化分析
- SD/MMC相关寄存器的介绍
- java 父子线程 调用链_ZipKin原理学习--Zipkin多线程及线程池中追踪一致性问题解决...
- 用run as以管理员权限运行脚本的方法
- ANSI Common Lisp 中文翻譯版 — ANSI Common Lisp 中文版
- 自动化测试——接口测试——pandas——CSV文件参数化——数据驱动
- 阿里分布式事务框架Seata原理解析
- linux目录分配独立磁盘空间,Linux 分配/home的磁盘空间给根目录
- 关于fork函数的使用
- 注册表常用命令DOS
- Whai_springmvc笔记
- Kubernetes K8s 结合国内外文章解决 The kubelet is not running
- 【网络游戏植入案例】
- vue+js数据处理,对数组重新构造
- mysql strip_strip 命令的用法
- 联邦学习实战-1:用python从零开始实现横向联邦学习
- mybatis show sql 打印 SQL 语句到控制台
热门文章
- 算法提高课-图论-单源最短路的扩展应用-AcWing 1137. 选择最佳线路:多源最短路、虚拟源点
- win10安装java1.8开发环境JDK
- linux信号检查参数相同,linux信号函数
- 《剑指offer》c++版本 7.重建二叉树
- leetcode 98. 验证二叉搜索树 递归遍历左右子树和中序遍历 c语言解法
- 易语言webservice接口_易语言语音通知webservice接口
- 开发者账号申请完多久可以用_苹果开发者从0到发布app到apple store
- php wap页下拉刷新代码,js实现的移动端下拉刷新功能代码实例
- java 日志输出 上下文_java – 使用ServletContextListener和SLF4J在contextDestroyed上没有日志输出...
- SHT30温湿度传感器驱动设计分析及代码实现