百分号 % 在 crontab 中不起作用
Posted
技术标签:
【中文标题】百分号 % 在 crontab 中不起作用【英文标题】:Percent sign % not working in 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
有效。
【问题讨论】:
你试过转义%
吗? curl -w "\%time_total\n"
...`
Cron error with using backquotes的可能重复
【参考方案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
^
【讨论】:
以上是关于百分号 % 在 crontab 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章
边距顶部/底部百分比在 Firefox 中不起作用 [重复]
Bash + Expect脚本在cron RHEL 7中不起作用