Mor*_*ock 5 linux cron automation
我想在我运行 Ubuntu 12.04 的笔记本电脑上每月运行一次作业,假设是每月的 22 日。
由于它是一台笔记本电脑,而且我可能并不总是每个月的第 22 天都使用它,cron因此不是一个很好的选择。
看着anacron,似乎有一个限制。也就是说,您可以指定一个“句点”,但不能指定特定的星期几或一个月的哪一天,如anacrontab文件格式所建议的:
# cat /etc/anacrontab
period delay job-identifier command
7 15 test.daily /bin/sh /home/myself/backup.sh
Run Code Online (Sandbox Code Playgroud)
我想说的是,如果我们在这个月的第 22 天,当然笔记本电脑正在运行,请运行该作业。如果 22 号过去了,而您还没有运行该作业,请在我启动后立即运行它。
我即将做一些丑陋的事情,比如混合cron和anacron使用自定义脚本或编写我自己的 bash 脚本,使用时间戳,可能在这个过程中重新发明方轮。
关于最佳行动方案的任何想法?
干杯。
每天运行命令,并让脚本记录上次执行备份的日期
当它启动时,获取当月的当前日期。如果是该月的 22 号,则正常运行并保存日期。如果 >22,并且上次运行是在同一个月,则退出。如果它<22,并且最后一次运行是上个月(不要忘记考虑从 12 到 1 的换行),则退出。
日期应该保存在某个文件中。
| 归档时间: |
|
| 查看次数: |
1079 次 |
| 最近记录: |