在第一天的时间“n”、第二天的“n+15 分钟”运行 Linux 脚本,依此类推

Pik*_*iku 5 linux webcam script scheduled-tasks cron

我正在尝试使用我的网络摄像头拍摄延时摄影图像。我想要做的是在 1 月 1 日午夜运行脚本,然后在 1 月 2 日的 00:15、00:30、1 月 3 日等等。这可以永远运行,我会在完成后将其关闭。

我不能用 Cron 做到这一点,我可以不填充所有可能的组合的 crontab 吗?我不知道还能做什么。

Lau*_*eau 7

与其在脚本中创建一个新的 cron 作业,并且每次都必须删除“旧的”cron 作业,您应该改用该at命令。该at命令正是为此创建的,让命令在特定日期/时间运行一次。这样,您就不必删除旧的 cron 作业。

所以,你可以有你的脚本,我们称之为“capture_from_webcam.sh”,看起来像这样:

#!/bin/bash

#schedule next capture for tomorrow + 15 minutes
echo "/path/to/capture_from_webcam.sh" | at tomorrow + 15 minutes

# capture from webcam
/path/to/capture_from_webcam.sh
Run Code Online (Sandbox Code Playgroud)

并在 1 月 1 日午夜第一次执行 if :

echo "/path/to/capture_from_webcam.sh" | at 00:00 01/01/2010
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请参阅at 手册页