Linux / Unix
系统里有一个很方便的程序「例行性计划任务」(Crontab),接触过的朋友一定不陌生。Crontab 主要是让系统去执行一些固定时间要自动进行的例行性工作,最常用的例如备份资料、移除暂存文件、更新或重新启动等等。如果将某个周期执行一次的指令写进 Crontab
,它就会随着系统时间的推移在你指定的时间自动执行,减少每次都必须重复执行相同工作的麻烦。
Crontab
有几种设定方法,最直观的是在图形化控制台(例如 cPanel
)上操作,一般使用者可能会在命令行编辑 /etc/crontab
文件。但令我困扰的是 Crontab
时间格式写法有些复杂,如果没有参考说明文档就很难写出正确格式。或者你想要让计划任务时间更细粒度、更有弹性,你就必须知道怎么样以标准格式来描述要执行某个例行性工作的时间。
最近无意间发现一个很好用的免费工具「Crontab.guru
」,它是一个更快速、更简单的在线计划任务编辑器。无须额外下载安装任何程序,只要依照 Crontab.guru
指定每列的时间,就可以快速完成计划任务时间的设定。它除了会以英文来描述这个时间,让使用者更容易理解外,你只要将结果复制粘贴到 Crontab
就能设定好指定的计划任务。
下面我们将以图文方式来叙述「Crontab.guru
」工具的使用方法。
网站名称:Crontab.guru
使用方法
- STEP 1
开启 Crontab.guru
网站后,主要功能就在网站上方,也就是你看到的那一条可编辑列。
预设情况每次开启 Crontab.guru
网站时都会自动跳出一组计划任务时间写法。你可以注意看一下每一个数字底下都会有对应的单位,由左至右分别是分钟、小时、日、月和周。下方还会告诉你这些列的表示法,例如可以用 *
代表任何数值、以 ,
分隔多个数值等等。
- STEP 2
前面我们有说过 Crontab.guru
本身就是一个简单方便的 Crontab
编辑器,因此使用者可以直接选取数字将它改成你要的计划时间。在编辑时 Crontab.guru
还会同步在上方「描述」标示出这个数值代表的意思,例如:下图我在编辑的「21」是代表 hour
,也就是指晚上九点 。
每列都有不同的表达方式,例如加上 ,
逗号来分隔多个数值、加上 *
代表任何数值,也能使用 –
来描述某个区间,修改时底下会告诉你可以使用的数值有那一些。
- STEP 3
如果要描述「0 0,12 1 */2 *」这样复杂的计划任务,或许你很难马上理解过来。Crontab.guru
的好处是它会转为英文描述显示于网站上方,我们就能很清楚知道这是指「每两个月的第一天当日的 0 点、12 点」。
如果你想知道一些固定的时间写法范本,Crontab.guru
也有一个「Examples」页面。里面收录许多范例,例如:每小时、每半天、每周、每季或每半年等等。
总结
至此,利用 Crontab.guru
快速设定计划任务的方法就介绍完了。最后在这里再推荐另一个类似的在线计划任务生成工具 Linux Crontab Generator
,它的使用方法和 Crontab.guru
类似,但功能更加强大!
来源:免费资源网络社群
题图:来自谷歌图片搜索
版权:本文版权归原作者所有
投稿:欢迎投稿,邮箱: editor@hi-linux.com