在 cron 作业中附加带有日期的文件名

在 cron 作业中附加带有日期的文件名

我读到过,我们可以使用 date 命令确定 Bash 中的当前日期,如下所示:

NOW=$(date +"%Y-%m-%d")

在我的 crontab 中,我将日志附加到文件中,并想用它将日期放在文件名末尾,如下所示:

cd /x/y/z/ && mycommand &>> /x/y/z/logs/mylog_$(date '+%Y%m%d').txt

但是,这并没有按预期工作。我收到以下错误消息,我不明白...我不知道它指的是什么。我对使用 cron 作业还很陌生。

/bin/sh: -c: line 0: unexpected EOF while looking for matching `''
/bin/sh: -c: line 1: syntax error: unexpected end of file

答案1

百分号%是 cron 自己的特殊字符。它在文本输入到 shell 之前被解释(因此它解释为单引号等)。您需要在 crontab 中使用反斜杠对其进行转义\%

相关内容