Почему я получаю эту ошибку?
/bin/sh: 1: Syntax error: Unterminated quoted string
при вызове этого /etc/crontab
?
19 2 * * * root for f in $(cat /home/rubo77/list); do date +"%y-%m-%d %T">"$f".datefile; done
Список содержит только пути к существующим каталогам, и это первые строки в моем crontab:
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
Когда я вызываю for
командную строку на консоли в bash, я не получаю никаких ошибок.
решение1
Вам нужно избегать %
знаков
см. этот связанный вопрос:Как выполнить `date` внутри задания вкладки cron?
Вы можете использовать это, чтобы исправить это.
sed -i 's/%/\\%/g' /etc/crontab