Прежде всего, если вы еще не поняли, чтобы получить только время в оболочке Macintosh, вы можете сделать:
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, в команду.Из справочной страницы crontab (5) :
Вся командная часть строки, вплоть до новой строки или символа%, будет выполняться с помощью / bin / sh илиshell, указанный в переменной SHELL файла cronfile.Знаки процента (%) в команде, если они не экранированы обратной косой чертой (), будут изменены на символы новой строки, и все данные после первого% будут отправлены команде в качестве стандартного ввода.
Учитывая, что командная строка начинает расти довольно долго, возможно, было бы лучше поместить ее в скрипт оболочки и назвать скрипт как задание cron.