Warum erhalte ich diesen Fehler?
/bin/sh: 1: Syntax error: Unterminated quoted string
wann rufe ich das auf /etc/crontab
?
19 2 * * * root for f in $(cat /home/rubo77/list); do date +"%y-%m-%d %T">"$f".datefile; done
Die Liste enthält nur Pfade zu vorhandenen Verzeichnissen und dies sind die ersten Zeilen in meiner Crontab:
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
Wenn ich die for
Befehlszeile auf der Konsole in Bash aufrufe, erhalte ich keine Fehler
Antwort1
Sie müssen den %
Zeichen entkommen
siehe diese verwandte Frage:Wie kann ich „date“ innerhalb eines Cron-Tab-Jobs ausführen?
Damit können Sie das Problem beheben
sed -i 's/%/\\%/g' /etc/crontab