Cron-检查启动时是否启用

Cron-检查启动时是否启用

我有一个脚本和配置文件。

  • 配置文件包含有关脚本是否运行(启用或禁用)的信息。
  • 如果启用,脚本必须按照预定的间隔运行。

我可以编写一个 cron 作业来以预设的时间间隔运行脚本,并且当脚本运行时我可以读取配置文件,如果未启用,那么我可以退出。

但是,我正在寻找一种更方便的方法来做到这一点。有没有办法告诉 cron 本身这个作业在启动时没有激活?因此,如果未启用(或其他情况),cron 将不会启动该作业。或者是否可以在运行时启用/禁用作业?

提前致谢。

答案1

啊,现在我明白了!这是一个相当常见的要求:

您需要做的只是测试给定文件是否存在,而不是其内容。例如,如果您想运行 cron 作业,请在您的主目录中创建一个文件:$ touch /home/you/cronjob_enable

然后编辑您的用户 crontab:

$ crontab -e
*/5 * * * *  /bin/bash -c 'test -e /home/you/cronjob_enable && /home/linux/test.sh'

就是这样。只要文件存在(无论是否为空,都无关紧要)并且您有运行的权限/home/linux/test.sh,脚本test.sh就会运行。
当您删除文件时/home/you/cronjob_enable,脚本 test.sh 将不会执行。

相关内容