作者:vincent | 来源:互联网 | 2023-02-11 19:24
我在crontab中创建了一个新任务,如下所示:
*/2 * * * * mongodump --db prodys --out /backup/databases/mongoDatabases/`date +"%m-%d-%y"`
我收到以下错误:
/bin/sh: 1: Syntax error: EOF in backquote substitution
请帮忙,我没有任何线索是什么错.
1> Inian..:
问题是cron
将其%
视为换行符.来自crontab POSIX man
页面:
除非使用反斜杠\转义,否则命令中的百分号(%)将更改为换行符,并且第一个%之后的所有数据将作为标准输入发送到命令.
也可以使用命令替换语法作为$()
遗留的``语法
您可以将命令更改为
*/2 * * * * mongodump --db prodys --out /backup/databases/mongoDatabases/$(date +'\%m-\%d-\%y')