2016-07-08 16 views
0

Ich möchte einen einzelnen Befehl von einer Crontab ausführen. Anstatt nur für einen Befehl ein Bash-Datei zu erstellen, ist es möglich, eine crontab irgendwie wie folgt auszuführen:Crontab: Ausführen eines einzelnen Befehls Inline

# Everyday at 3 am, restart the server. 
0 3 * * * 'sudo shutdown -r now' 

Statt:

0 3 * * * /usr/local/bin/restart.bash 

Kann so etwas tun?

Antwort

0

Ja, Sie können den Befehl in der Zeile eingeben, aber er muss genauso eingegeben werden, als ob Sie in der Befehlszeile wären. Sie geben keine einfachen Anführungszeichen ' in der Befehlszeile ein, also sollten Sie sie auch nicht in der Crontab eingeben.

Schließlich muss ein Befehl, der Root-Zugriff erfordert, in der Stamm-Crontab ausgeführt werden. (Dh bearbeiten sudo crontab -e anstelle von einfachen crontab -e oder melden Sie sich als root mit su - vor der Eingabe crontab -e)

So in Ihrem Beispiel, sollten Sie dies in der crontab Typ:

# Everyday at 3 am, restart the server. 
0 3 * * * shutdown -r now 

(sudo hat keine Auswirkung , entfernte einfache Anführungszeichen)

Verwandte Themen