Использование% в команде cron
Поскольку %
имеет особое значение для cron, как я могу использовать его как часть команды?
Я нашел эту страницу http://www.hcidata.info/crontab.htm, в которой упоминается трубопровод echo
а также sed
чтобы избежать %
а затем удалите лишние \
, но в моем случае команда date
, который не принимает параметры через STDIN, так что это не работает:
echo '+\%Y' | sed -e 's|\\||g' | date
Я думаю, что могу создать специальный скрипт даты, который будет выводить дату в нужном мне формате, и вместо этого вызывать ее, но я все еще задаюсь вопросом, возможно ли сделать это непосредственно в команде cron.
Спасибо!
1 ответ
Справочная страница crontab(5) гласит:
Знаки процента (%) в команде, если они не экранированы обратной косой чертой (), будут заменены на символы новой строки, [...]
так что вы должны быть в состоянии избежать %
символ с префиксом с обратной косой чертой \
:
00 15 * * * user date '+\%Y'
\%
последовательность обрабатывается cron
поэтому оболочка увидит команду date '+%Y'
который является правильным вызовом date
,