Gibt es gute Crontab-Syntaxprüfer oder Eingabewerkzeuge?

5398
Peter

Vor kurzem hatte ein Benutzer auf einem unserer Systeme (Linux Ubuntu, aber * nix wäre dasselbe) eine Crontab-Datei, in der eine abschließende Zeile fehlte.

Es ist üblich, dass * nix-Konfigurationsdateien die Beendigung der Zeilenumbrüche erfordern, wobei sich cron nicht unterscheidet. Es wird jedoch keine Warnung angezeigt, wenn Sie eine Datei ohne Zeilenvorschub hinzufügen. Der Befehl wird niemals ausgeführt.

So identifizieren sich zwei Fixes.

  1. Führen Sie einen Cron-Prozess aus, um nach diesen Dateien zu suchen.
  2. Bieten Sie Cron ein freundlicheres Frontend.

Das zweite ist, worum es in dieser Frage geht. Entweder, um die Syntax vor dem Eingeben der Datei zu überprüfen, oder um den gesamten Eingabevorgang zu beginnen, der ohnehin ein wenig geheimnisvoll ist.

Für diese bestimmte Maschine wäre ein Befehlszeilentool erforderlich, da es sich in einem Rechenzentrum befindet und keine X-Umgebung installiert ist.

3
Ein Teil des Problems könnte die wirklich alte Version von cron sein, die auf der (Ubuntu) -Maschine installiert ist - Vixie cron aus dem Jahr 1993. Mein Fedora hat eine 2007-Version, die im Handbuch keinen Kommentar mehr darüber enthält, dass EOL ein Fehler ist (der Fehler) 1993 tut man). Peter vor 14 Jahren 0
Bedeutet das, dass Sie die Crontab auch als reguläre Datei bearbeiten, anstatt "Crontab -e" zu verwenden? Ich gehe davon aus, dass Sie einen guten Grund haben, die wirklich alte Version weiter zu verwenden. Doug Harris vor 14 Jahren 2

4 Antworten auf die Frage

1
Pinochle

Ich habe immer festgestellt, dass die Syntaxfärbung vimfür mich genug war. Ich bin dem Newline-Problem nicht begegnet, nur weil ich mich darauf trainiert habe, automatisch damit umzugehen, wie beim Autofahren. Sie haben also die Erfahrung, wo Sie fahren, während Sie über etwas Nachdenken nachdenken und Sie aus dem Auto steigen und sich fragen "Wie bin ich hierher gekommen? Ich kann mich überhaupt nicht an die Reise erinnern!" --- "Verdammt, woher kamen all diese Zeilen?"

1
jpolache

I like the cron interface in webmin.

Sieht gut aus. Vielen Dank. http://www.webmin.com/usermin.html Peter vor 14 Jahren 1
1
mlbx

Es gibt jetzt CronSandbox .

Dies ist eine "Sandbox", die sich an einem sicheren Ort zum Erkunden von Crontab-Befehlen befindet. Geben Sie die Timing-Werte ein. CronSandbox überprüft die Syntax und liefert die zukünftigen Datums- und Zeitangaben, zu denen der Job ausgeführt wurde.

0
warren

Ich habe meinen Standardeditor in Emacs geändert, der fragt, ob Sie den Puffer beim Beenden mit einem Zeilenumbruch beenden wollen :)

setenv EDITOR <editor> 

in Ihrer .bashrc (oder entsprechenden) sollte diese Lösung behandeln :)

Um den zweiten Teil Ihrer Frage zu beantworten, können Sie auch Skripts in den cron.<period>Verzeichnissen in ablegen/etc

Ja, ich auch. Tatsächlich dachte ich, dass dieser Benutzer dies auch tat, also war ich überrascht, dass er einen fehlenden Newline hatte. Aber da es ein paar Benutzer gibt, dachte ich, dass es vielleicht ein textbasiertes Werkzeug gab, wie das gnome-grafische, das jemand vorgeschlagen hatte, aber diese Antwort scheint nun verschwunden zu sein. Vielen Dank. Peter vor 14 Jahren 0