我有一个看起来像这样的 cronjob
0 0 * * 7 [ $(date +\%d) -le 07 ] && /home/archiver/archiver.sh &> /home/archiver/output
从 cron+bash 的角度来看,它会在每个月的第一个星期日运行(或者我是这么认为的。它今天运行,但我们会看到下星期日的情况,哈哈)。
但&> /home/archiver/output
似乎并没有采取。该脚本非常健谈,/home/archiver/output
修改/更改的时间戳为 00:00:01,但完全是空的。
我缺少什么来捕获脚本的输出?
答案1
你的 cron 似乎不知道或不使用&>
bash 的短路。当你这样写重定向时
/home/archiver/archiver.sh >/home/archiver/output 2>&1
它应该可以工作。我也希望>>/home/archiver/output 2>&1
始终附加到日志文件中。