2014-11-25 98 views
5

工作,我有一个cron的问题与curl百分号%未在crontab中

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

的伟大工程,在日志文件中添加符合TOTAL_TIME。

但是与cron相同的行并没有做任何事情。

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

+0

您是否尝试过逃跑''%? 'curl -w“\%{time_total} \ n”'...' – fedorqui 2014-11-25 09:48:33

+0

[Cron使用反引号错误]的可能重复(http://stackoverflow.com/questions/3444595/cron-error-with-using-反引号) – tripleee 2014-11-25 11:07:26

回答

7

%crontab的特殊字符。从man 5 crontab

“第六”字段(行的其余部分)指定命令为 运行。该行的整个命令部分(换行符或 “%”字符)将由/ bin/sh或由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 
     ^
+1

作品,谢谢:) – user3647822 2014-11-26 10:31:05