shell 如果{user}没有crontab,请在if语句中使用“crontab -l”发送邮件

kgqe7b3p  于 12个月前  发布在  Shell
关注(0)|答案(1)|浏览(88)

我正在编写一个脚本,用于在用户没有crontab时发送电子邮件警报。

if [[ $(crontab -l) == "no crontab for {user}" ]]; then
    mailx ....
fi

但是脚本在crontab -l处结束,if语句的主体没有被执行。
我尝试在输出上运行grep

crontab -l | grep "no crontab for {user}"

没有工作

nhhxz33t

nhhxz33t1#

我建议使用crontab的退出代码:

if ! crontab -l 2>/dev/null 1>&2; then
  echo "no crontab";
else
  echo "crontab";
fi

相关问题