作为cron作业运行时输出不会转到文件

时间:2017-02-19 00:50:53

标签: bash cron

我有以下bash脚本:

clean-tmp.sh

 #!/bin/bash
 tmpreaper 1h /tmp --test > ./tmpreaper.log

当我使用./clean-tmp.sh在终端中运行它时,它会写入文件./tmpreaper.log

我使用crontab -e将脚本添加到cron作业列表中:

*/5 * * * * cd /home/cron-jobs && ./clean-tmp.sh

然后我检查了cron的日志,这个条目每5分钟就在那里:

Feb 19 00:45:01 ip-172-31-23-184 CRON[1475]: (ubuntu) CMD (cd /home/cron-jobs && ./clean-tmp.sh) 

但它不再写./tmpreaper.log了。

我到底在做什么?

2 个答案:

答案 0 :(得分:0)

只需指定文件的绝对路径,例如tmpreaper 1h /tmp --test > /var/log/tmpreaper.log

答案 1 :(得分:0)

@Kacy:如果没有cron日志,你很难说,你可以看一下cron日志(/ var / log / cron等)。

0,5,10,15,20,25,30,35,40,45,50,55 * * * * cd /home/cron-jobs; ./clean-tmp.sh

可能某些系统不会像您尝试的那样允许时间段,请以上述方式尝试一次,然后告诉我们。