在 Unix 中运行 cron 作业时遇到问题,该作业会为输出数据转储生成动态文件名

在 Unix 中运行 cron 作业时遇到问题,该作业会为输出数据转储生成动态文件名

我正在尝试使用 cron 来安排 MySQL 数据库转储,但是当我在 Shell 中直接调用某些我知道可以正常工作的代码时,出现了错误。

以下是在 Shell 中运行良好的代码:

mysqldump -uUSER -pPASS DB > "/path/to/backup/backup_`date +%Y%m%d%H%M%S`.sql"

但是,当我设置 cron 作业时,它返回以下错误:

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

请有人告诉我我做错了什么吗?

干杯,伊恩。

答案1

尝试:

mysqldump -uUSER -pPASS DB > /path/to/backup/backup_`date +"\%Y\%m\%d\%H\%M\%S"`.sql

将来更简单的解决方案是将您在 bash 中运行的命令放入 shell 脚本中,然后从 cron 运行该 shell 脚本。如果它在 bash 中运行,那么它也会在 shell 脚本中运行。

相关内容