从crontab运行脚本时,从Shell脚本写入文件

时间:2014-02-19 10:07:24

标签: linux bash shell crontab

我正在尝试做什么:

我写了一个Shellscript,它应该将一些日志写入日志文件。类似的东西:

    echo "downloaded header" >> log

我也尝试用cat代替echo,并且我已经给了日志的完全权限,所以任何人都可以访问它。如果我从命令行启动脚本一切正常,条目按预期进行。 如果我给出了日志文件的完整路径并不重要,我试过了。

问题:

如果我从crontab运行脚本并且是它必须使用crontab,则不会在我的日志中写入任何内容。所以回声“xy”>>日志不起作用,猫也不行。

任何想法?提前谢谢。

2 个答案:

答案 0 :(得分:1)

尝试使用完整路径重定向到日志文件

echo "downloaded header" >> $HOME/Log_dir/log  ## just an example

答案 1 :(得分:1)

试试这个解决方案:

cat cronjob
* * * * * echo "downloaded header" >> /path/to/log

然后:

chmod +x cronjob
chmod +x script.sh

/etc/init.d/crond start  #redhat based servers like centos
/etc/init.d/cron  start  #debian based servers like ubuntu

crontab cronjob