我每小时使用 cronjob(我在 Mac 上)触发此命令:
/usr/bin/curl -s --data "gr=0123&press=OK" http://www.myurl.com/myphp.php >/dev/null
有没有办法以 HH:MM 格式发布我当前的时间,添加新的发布参数?如何?
首先,如果您还没有弄清楚,要在 Macintosh shell 中获取时间,您可以执行以下操作:
date +"%H:%M"
因此,要回答您的问题,请尝试:
/usr/bin/curl -s --data "gr=0123&press=OK&time=`date +'\%H:\%M'`" http://www.myurl.com/myphp.php >/dev/null
如果这不起作用,请尝试这样做(全部在一行上)
setenv CURRENTTIME `date +'\%H:\%M'` ; /usr/bin/curl -s --data "gr=0123&press=OK&time=$CURRENTTIME" http://www.myurl.com/myphp.php >/dev/null
请注意,您需要转义百分号;否则,cron 会将它们转换为换行符,并通过 stdin 将除第一行之外的每一行传递给命令。来自定时任务(5) http://developer.apple.com/library/mac/#documentation/Darwin/Reference/Manpages/man5/crontab.5.html联机帮助页:
该行的整个命令部分(直到换行符或 % 字符)将由 /bin/sh 或 cronfile 的 SHELL 变量中指定的 shell 执行。命令中的百分号 (%),除非用反斜杠 () 转义,否则将被更改为换行符,并且第一个 % 之后的所有数据都将作为标准输入发送到命令。
考虑到命令行开始变得相当长,最好将其放在 shell 脚本中,并将该脚本作为 cron 作业调用。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)