【问题标题】:Percent sign % not working in crontab百分号 % 在 crontab 中不起作用
【发布时间】:2015-01-23 06:13:00
【问题描述】:

curl 有一个 cron 问题:

curl -w "%{time_total}\n" -o /dev/null -s http://myurl.com >> ~/log

效果很好,并在日志文件中添加一行总时间。

但同一行与 cron 没有任何作用。

这不是路径问题,因为curl http://myurl.com >> ~/log 有效。

【问题讨论】:

标签: bash curl cron crontab


【解决方案1】:

%crontab 的特殊字符。来自man 5 crontab

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

所以你需要转义% 字符:

curl -w "%{time_total}\n" -o /dev/null -s http://myurl.com >> ~/log

curl -w "\%{time_total}\n" -o /dev/null -s http://myurl.com >> ~/log
         ^

【讨论】:

    猜你喜欢
    • 2013-04-20
    • 2011-12-19
    • 2013-11-12
    • 2018-12-21
    • 1970-01-01
    相关资源
    最近更新 更多