带有百分号的命令未在 crontab 中运行

带有百分号的命令未在 crontab 中运行

以下 crontab 不起作用:

# TEST LINE DOES DOT RUN
*/1 * * * * /bin/echo 'test '`/bin/date +%Y-%m-%d` >> /tmp/test

我也尝试用以下方式启动它:

SHELL=/bin/bash

更新:我以为反引号字符 ` 是罪魁祸首,但下面的答案表明百分比 % 才是罪魁祸首!

答案1

在中,/bin/date +%Y-%m-%d您需要%根据\本手册页

“第六个”字段(行的其余部分)指定要运行的命令。行的整个命令部分(直到换行符或 % 字符)将由 /bin/sh 或 cronfile 的 SHELL 变量中指定的 shell 执行。除非使用反斜杠 () 进行转义,否则命令中的百分号 (%) 将更改为换行符,并且第一个 % 之后的所有数据将作为标准输入发送到命令。

相关内容