perl - 用 Perl 阅读和解释 crontab
问题描述
我正在编写一个 Perl 程序来检查并确保某些系统备份任务是从 crontab 执行的。
我需要阅读 crontab 并解释它应该何时运行,以检查该备份是否已完成。这是一个例子。
00 03 * * 6 system_backup.sh
假设这个任务将生成一个名为system_backup_20180510.iso
然后我的想法是将“理想日期”存储到 var 中,然后与文件名中的该日期进行比较。最大的问题是如何在 crontab 的日期字段填满的情况下构建理想的日期。
大家有什么可以推荐的?谢谢
解决方案
注意第 5 个字段:这只在星期六运行。
以下是您可以使用 GNU 日期执行的操作:
$ date -d "-1 week saturday 03:00" "+%Y%m%d %H:%M:%S"
20180505 03:00:00
$ date -d "-w week saturday 03:00" "+%Y%m%d %H:%M:%S"
20180518 13:00:00
$ date -d "-2 week saturday 03:00" "+%Y%m%d %H:%M:%S"
20180428 03:00:00
推荐阅读
- jquery - 将子元标记附加到头标记中
- assembly - movb 如何将文件扩展名设置为 .asm?
- python - 无法将字符串列转换为在熊猫中浮动
- release - android 4 中的 Okhttp3.CertificatePinner 错误刚刚发布 APK
- string - Julia:是否可以通过将一段内存重新解释为字符串来创建字符串?
- java - 多个 sc.nextLine(); 一个接一个地运行,但需要运行 if/else 语句
- macros - 周围有 lisp 宏的麻烦和
- python - 寻找影响净收入的特征
- javascript - 如何对 axios 响应拦截器进行自定义错误代码检查?
- php - PHP CodeIgniter AJAX POST方法不起作用