睡眠直到此 systemd 计时器日历时间发生?

睡眠直到此 systemd 计时器日历时间发生?

systemd 具有计时器,其中有很多有用的方法来输入日期或时间。我正在编写一个长时间运行的数据处理脚本。是否有任何命令可以休眠直到发生特定的 systemd 时间定义?例如systemd-timer-sleep --until-calendar="03:00",一个命令将阻塞到下一个凌晨 3:00。

是的,我知道这意味着我的脚本可能会运行几天,没关系。

我确信我可以使用date&&sleep计算到达我想要的日期时间的秒数来做到这一点,但我想知道是否有(现在)更简单的方法。

答案1

我认为实现此目的的最简单方法是这样的:

while [ $(date +%H:%M) != "03:00" ]; do sleep 1; done

这将一直阻塞到下一次凌晨 3 点。您可以轻松修改格式代码,使其符合您的要求。

相关内容