Команда date со строкой форматирования не выполняется в cron под Linux [дубликат]

На этот вопрос уже есть ответ:

У меня есть следующий crontab:

# m h  dom mon dow   command
* *   * * *   /bin/date                >> /tmp/date.log  2>&1
* *   * * *   /bin/date "+%F_%H-%M-%S" >> /tmp/date2.log 2>&1

Первый выполняется правильно .. запись текущая дата в /tmp/date.log Вторая не работает. /tmp/date2.log никогда не создается. Единственное отличие состоит в том, что вторая команда даты имеет строку форматирования в качестве параметра. Вне cronjob вторая команда даты ( / bin / date "+% F_% H-% M-% S" ) работает нормально.

В чем может быть причина такого поведения?

Моя система:

uname -a

Linux corsair 4.15.0-50-generic #54-Ubuntu SMP Mon May 6 18:46:08 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

lsb_release -a

Distributor ID: LinuxMint
Description:    Linux Mint 19.1 Tessa
Release:    19.1
Codename:   tessa
0
задан 26 June 2019 в 14:17
1 ответ

Неэкранированные знаки процента в команде заменяются символами новой строки, см. crontab (5) . Перед ними нужно поставить обратную косую черту.

2
ответ дан 4 December 2019 в 13:19

Теги

Похожие вопросы