将cron输出发送到名称中带有时间戳的文件

我有一个这样的LAMP设置的crontab:

0 0 * * * /some/path/to/a/file.php > $HOME/cron.log 2>&1 

这将该文件的输出写入cron.log 。 但是,当它再次运行时,它会覆盖文件中以前的任何内容。

我怎样才能得到cron 输出到文件的时间戳文件?

示例文件名将是这样的: 2010-02-26-000000-cron.log

我并不关心格式,只要它有某种时间戳。

提前致谢。

尝试:

 0 0 * * * /some/path/to/a/file.php > $HOME/`date +\%Y\%m\%d\%H\%M\%S`-cron.log 2>&1 

如果你喜欢玩date格式, 只要确保能够像上面那样跳过任何%\%

我强烈build议您使用时间戳将所有内容保存到同一个文件中,如此处所述 。

去掉

2>&1

并通过时间戳脚本运行它,然后将其保存到日志文件(如上面的链接中所述)。

您也可以通过这样做将您的输出追加到日志文件中:

 0 0 * * * /some/path/to/a/file.php >> $HOME/cron.log 2>&1 

我解决了这个问题。 只需在date命令之前添加datepath(/ bin / date)。