我如何向 cron 作业发出信号以跳过运行?

我如何向 cron 作业发出信号以跳过运行?

我有一个每 X 分钟运行一次的 cron 作业,我希望有一种方法可以“发出信号”让它在需要时不要执行任何操作。
有一个标准的方法吗?我唯一的想法是检查某个目录是否存在文件,如果存在则退出。这种方法有意义吗?还有其他方法吗?

答案1

当 cronjob 设置正确时,它总是会运行。您必须“指示”您的脚本或程序,而不是cron其本身。

对于您的情况,您可以轻松检查文件是否存在。制作包装脚本wrapper.sh

#!/bin/bash

if [ -e /path/to/file1 ] && [ -e /path/to/file2 ]
then
    exit 1
fi

# Your script goes here

然后您必须配置您的 cronjob 来运行wrapper.sh。它将检查您的文件是否存在,如果存在,它将退出,否则正常运行您的脚本。

相关内容