Cronjob mit Bash-Skript hinzufügen - Kein Crontab für Root

Cronjob mit Bash-Skript hinzufügen - Kein Crontab für Root

Ich habe ein Bereitstellungsskript und versuche darin einen Cron-Job hinzuzufügen. Dies ist der Code, den ich verwende und den ich auf Stackoverflow gefunden habe. Ich verwende Debian 8.

# ADD CRON
crontab -l > mycron
echo "10 * * * * cd /var/www/test/ && ./test" >> mycron
crontab mycron
rm mycron

Wenn ich diese Befehle ausführe, erhalte ich die Antwort:no crontab for root

Was mache ich hier falsch und wie kann ich diesen Cron-Job mithilfe eines Bash-Skripts hinzufügen? Vielen Dank.

Antwort1

Klingt, als ob (a) die Crontab von Root anfangs leer ist und (b) die -eOption in der Shell festgelegt ist.

Wenn die Crontab-Datei des Benutzers leer ist, crontab -lwird das Programm mit dem Status 1 beendet.

Wenn die Shell mit Option ausgeführt wird -e, wird sie bei einem Fehler sofort beendet (definiert als Beenden mit einem Status ungleich Null).

Suchen Sie errexitin der Ausgabe von echo $SHELLOPTSnach dieser Einstellung. Deaktivieren Sie sie in der aktuellen Shell mit set +e.

verwandte Informationen