我可以使用 cron,但我不知道是否有办法设置正确的时间表。我还可以检查 Python 中的日期,每天通过 cron 运行脚本,但在我的 (Python) 脚本中检查正确的日期(我假设它有更强大的条件)。
我想限制在 1 到 7 之间的星期五运行一次,而在 15 到 21 之间的星期五限制一次跑步。但是这个选项在像 3/2013 这样有 5 个星期五的月份会有问题。
我可以使用 cron,但我不知道是否有办法设置正确的时间表。我还可以检查 Python 中的日期,每天通过 cron 运行脚本,但在我的 (Python) 脚本中检查正确的日期(我假设它有更强大的条件)。
我想限制在 1 到 7 之间的星期五运行一次,而在 15 到 21 之间的星期五限制一次跑步。但是这个选项在像 3/2013 这样有 5 个星期五的月份会有问题。
这是你要找的吗?
把它放在 crontab 中:
0 7 * * 5 sh -c " if [ $(expr $(expr $(date +\%s) \/ 604800) \% 2) -eq 0 ]; then command; fi "
这将在每隔一个星期五早上 7 点运行您的命令。
注:数字 604800 表示一周(3600sec * 24 * 7)。
为什么不在每个星期五运行 cron 作业,而是添加代码以将上次运行的日期写入文件。检查是否已经过了两周,重写文件,然后运行其余的 cron 作业