Ich versuche, einen Cron auf meinem Mac einzurichten, aber es scheint, dass die Erstellung eines Crontab für meinen Benutzer nie abgeschlossen ist. Ich öffne das Terminal und gebe ein:
$ crontab -e
Was dies zurückgibt:
crontab: no crontab for jjmay - using an empty one
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
"/tmp/crontab.rBdeP6yv1U" 0L, 0C
Und dann wartet es dort, bis ich aus dem Fenster schließe, ich habe es so lange wie 20 Minuten losgelassen. Ich öffne ein anderes Terminalfenster, um zu überprüfen, ob mein Crontab erstellt wurde, und erhalte nichts.
$ crontab -l
crontab: no crontab for jjmay
Irgendwelche Ideen, warum ich das nicht erstellen kann oder ob ich meine Crontab manuell erstellen kann, damit ich sie bearbeiten kann?
Antworten:
Hier geht es nicht um den Editor, sondern um Benutzerberechtigungen. Zuerst Wurzel werden:
Bearbeiten Sie dann die Crontab für den richtigen Benutzer:
Sie können nach dem Speichern der Datei überprüfen, ob sie ordnungsgemäß gespeichert wurde, indem Sie Folgendes ausführen:
quelle
sudo crontab -u username -e
Ich bin gerade auf dieses Problem gestoßen. Beim Versuch, das Problem zu lösen, wurde ich von Google hierher verwiesen. Wie auch immer, hier ist, wie ich es gelöst habe.
benutzen
was du richtig gemacht hast.
Drücken Sie 'i', um Ihren Cronjob einzufügen. Zum Beispiel,
Denken Sie daran, nach der Zeile die Eingabetaste zu drücken. Wenn Sie nicht die Eingabetaste drücken, wird dies so sein
Drücken Sie ESC und geben Sie Folgendes ein: wq, um die Datei zu speichern und zu beenden. Es sollte "crontab: Installation neuer crontab" heißen
Mir wurde klar, dass wenn Sie nach Ihrer Zeile nicht die Eingabetaste drücken, das Ganze nicht gespeichert wird.
Ich hoffe es hilft.
quelle
:q!
während Ihre Lösung:wq
den ganzen Unterschied machte.:q!
Ermöglicht das Beenden ohne Speichern, während beim:wq
Schreiben in eine Datei vor dem Beenden geschrieben wird.Durch Schließen des Terminalfensters wird die Crontab nicht gespeichert.
Da die Datei mit vim erstellt wird, lesen Sie, wie Sie VIM verwenden, und gehen Sie von dort aus.
launchd ist die (von Apple) bevorzugte Methode in 10.5 und 10.6, aber Sie haben nicht danach gefragt, wie die Crontab erstellt werden soll.
quelle
Das angezeigte Fenster ist ein vi-Editor. Auf herkömmlichen Unix-Systemen ist vi der Standardeditor. Es sieht so aus, als ob Mac OS X diese Tradition beibehalten hat.
Stellen Sie die
EDITOR
undVISUAL
Umgebungsvariablen auf den Namen (vollständigen Pfad, wenn es nicht in ist$PATH
) von Ihrem bevorzugten Editor. Z.BDiese Einstellung sollte in Ihre gehen
~/.profile
(vorausgesetzt, Mac OS X liest diese Datei beim Anmelden; wenn es eine OSX-Methode zum Definieren von Umgebungsvariablen für eine ganze Sitzung gibt, können Sie sie dort definieren).quelle
Es ist meine Lösung: Ändern Sie zuerst Ihren Editor.
export EDITOR=vim
Ändernautocmd filetype crontab setlocal nobackup nowritebackup
Sie dann .vimrc, es wird funktionieren.quelle