首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >你是否经常忘记 Linux 计划任务 Crontab 复杂的语法格式呢,用上这款神器后再也不用担心了!

你是否经常忘记 Linux 计划任务 Crontab 复杂的语法格式呢,用上这款神器后再也不用担心了!

作者头像
iMike
发布2020-03-31 14:48:40
8760
发布2020-03-31 14:48:40
举报
文章被收录于专栏:运维之美运维之美

Linux / Unix 系统里有一个很方便的程序「例行性计划任务」(Crontab),接触过的朋友一定不陌生。Crontab 主要是让系统去执行一些固定时间要自动进行的例行性工作,最常用的例如备份资料、移除暂存文件、更新或重新启动等等。如果将某个周期执行一次的指令写进 Crontab,它就会随着系统时间的推移在你指定的时间自动执行,减少每次都必须重复执行相同工作的麻烦。

Crontab 有几种设定方法,最直观的是在图形化控制台(例如 cPanel)上操作,一般使用者可能会在命令行编辑 /etc/crontab 文件。但令我困扰的是 Crontab 时间格式写法有些复杂,如果没有参考说明文档就很难写出正确格式。或者你想要让计划任务时间更细粒度、更有弹性,你就必须知道怎么样以标准格式来描述要执行某个例行性工作的时间。

最近无意间发现一个很好用的免费工具「Crontab.guru」,它是一个更快速、更简单的在线计划任务编辑器。无须额外下载安装任何程序,只要依照 Crontab.guru 指定每列的时间,就可以快速完成计划任务时间的设定。它除了会以英文来描述这个时间,让使用者更容易理解外,你只要将结果复制粘贴到 Crontab 就能设定好指定的计划任务。

下面我们将以图文方式来叙述「Crontab.guru」工具的使用方法。

  1. 网站名称:Crontab.guru
  2. 网站链接:https://crontab.guru/

使用方法

  1. STEP 1

开启 Crontab.guru 网站后,主要功能就在网站上方,也就是你看到的那一条可编辑列。

预设情况每次开启 Crontab.guru 网站时都会自动跳出一组计划任务时间写法。你可以注意看一下每一个数字底下都会有对应的单位,由左至右分别是分钟、小时、日、月和周。下方还会告诉你这些列的表示法,例如可以用 * 代表任何数值、以 , 分隔多个数值等等。

  1. STEP 2

前面我们有说过 Crontab.guru 本身就是一个简单方便的 Crontab 编辑器,因此使用者可以直接选取数字将它改成你要的计划时间。在编辑时 Crontab.guru 还会同步在上方「描述」标示出这个数值代表的意思,例如:下图我在编辑的「21」是代表 hour,也就是指晚上九点 。

每列都有不同的表达方式,例如加上 , 逗号来分隔多个数值、加上 * 代表任何数值,也能使用 来描述某个区间,修改时底下会告诉你可以使用的数值有那一些。

  1. STEP 3

如果要描述「0 0,12 1 */2 *」这样复杂的计划任务,或许你很难马上理解过来。Crontab.guru 的好处是它会转为英文描述显示于网站上方,我们就能很清楚知道这是指「每两个月的第一天当日的 0 点、12 点」。

如果你想知道一些固定的时间写法范本,Crontab.guru 也有一个「Examples」页面。里面收录许多范例,例如:每小时、每半天、每周、每季或每半年等等。

总结

至此,利用 Crontab.guru 快速设定计划任务的方法就介绍完了。最后在这里再推荐另一个类似的在线计划任务生成工具 Linux Crontab Generator,它的使用方法和 Crontab.guru 类似,但功能更加强大!

项目地址:https://helloacm.com/crontab-generator/

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-03-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 奇妙的Linux世界 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 使用方法
  • 总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档