在特定时间段内执行服务

在特定时间段内执行服务

早上好,我有一个脚本,可以在我打字时激活笔记本电脑键盘上的背光。我设置了一项使脚本全天保持活动状态的服务,但现在我想做另一件事。是否可以设置 systemctl 以使服务仅在夜间保持活动状态? (晚上 9 点至早上 7 点)所以:

  1. 如果系统在此期间启动,则服务将被执行,否则,如果系统在不同期间启动,则不会执行。
  2. 如果系统在晚上 8 点处于活动状态,则服务将启动,然后在早上 7 点它将停止。
  3. 如果服务处于活动状态并且笔记本电脑进入睡眠模式,并且我在下午重新打开它,那么服务应该停止。

我设置了一个 crontab 但它只适用于第二点。我还不知道它是否也适用于第三点。

提前致谢!

答案1

  1. @reboot你的crontab.

  2. 晚上 8 点cron作业启动服务(如果需要),还可以排队at作业以0700停止服务。读man at

  3. 安装pm-tools软件包,阅读dpkg -L pm-tools以了解如何在挂起/恢复/休眠/恢复时执行脚本。

相关内容