每 2 小时执行一次 cron 作业,持续时间为 30 分钟


execute cron job every 2 hour with 30 min duration

我已经搜索了SO,但似乎找不到任何涵盖我的小问题的主题。

我对 cron 工作很陌生。

我有一个基于 IP 的警报。该警报可以控制无线电源插座,在基于 Web 的控制面板中打开和关闭它们。我可以通过简单的http命令控制电源插座,使它们打开和关闭。

我已经制作了一个php脚本来处理这个问题。现在它们是 2 个独立的脚本,一个用于打开,一个用于关闭。该脚本仅控制一个特定的电源插座。

我的问题是我需要一个基于时间的切换方案。首先我想让 php 脚本睡觉,但在睡眠时间是 1 小时,这不是我的首选。

所以我们开始了。

是否可以将 cron 作业设置为:

1

:运行ON脚本1秒,只是为了触发脚本中的http命令。2:等待1小时。3:运行关闭脚本 1 秒以触发 HTTP 命令。4:等待2小时。5:重新开始。

报警系统没有问题,即使电源插座关闭,也发送 OFF http 命令,反之亦然。

您可以将所有命令合并为单个命令,并每 3 小时运行一次。

0   */3 *   *   *   /path/to/1st_script; sleep 3600; /path/to/2nd_script

这将在 0 分钟每 3 小时运行一次1st_script,然后等待 1 小时,然后运行2nd_script。

现在我只需要弄清楚如何让系统在 cronjob 中接受我的 php 脚本。

我已经读到我必须将/usr/bin/php 添加到 cronjob 命令中,但这在我的 RaspberryPi 服务器上不存在(nginx with FPM/FastCGI)