crontab

So planen Sie eine Aufgabe unter Linux?

So planen Sie eine Aufgabe unter Linux?
Immer wenn ein UNIX-basiertes Betriebssystem verwendet wird, müssen bestimmte Aufgaben wiederholt ausgeführt werden. Sie jedes Mal manuell auszuführen ist zeitaufwändig und insgesamt ineffizient. Um dieses Problem zu lösen, wird UNIX mit seinen integrierten Taskplanern geliefert. Diese Aufgabenplaner fungieren wie ein intelligenter Wecker. Wenn der Alarm ertönt, führt das Betriebssystem die vordefinierte Aufgabe aus.

Im Fall von Linux enthält es zwei grundlegende, aber leistungsstarke Tools: Cron-Daemon (Standard-Aufgabenplaner) und at (eher geeignet für die einmalige Aufgabenplanung).

In diesem Handbuch erfahren Sie, wie Sie eine Aufgabe unter Linux planen.

Aufgaben unter Linux planen

Cron
Der Cron-Daemon ist dafür verantwortlich, viele Jobs zu bestimmten Zeiten auszuführen. Diese Aufgaben werden in der Regel zu festgelegten Zeiten im Hintergrund ausgeführt. Es bietet große Flexibilität unabhängig von der Aufgabe, unabhängig vom Intervall (Stunde, Woche, Monat, Jahr oder was auch immer).

Cron verfolgt seine Aktionen mithilfe der crontab-Datei. Die crontab-Datei ist ein Skript, das alle notwendigen Informationen enthält, um alle Cron-Jobs auszuführen.

Werfen wir einen kurzen Blick auf die grundlegende Verwendung von cron. Im Falle eines der folgenden Befehle wird er für den Root-Benutzer konfiguriert, wenn er mit sudo-Berechtigung ausgeführt wird. Für die Demonstration habe ich mir eine Crontab-Beispieldatei von hier geholt.

Um alle geplanten Cron-Jobs für den aktuellen Benutzer aufzulisten, führen Sie den folgenden Befehl aus. Es wird der gesamte Inhalt der crontab-Datei gedruckt.

$ crontab -l


Möchten Sie die Cron-Jobliste für einen anderen Benutzer?? Führen Sie stattdessen diesen Befehl aus.

$ sudo crontab -u -l


Um das crontab-Skript zu bearbeiten, führen Sie den Befehl aus. Um die crontab-Datei für root zu bearbeiten, führen Sie den folgenden Befehl mit sudo-Berechtigungen aus.

$crontab -e


Jede Zeile im crontab-Skript definiert eine Aufgabe. Hier ist eine kurze Aufschlüsselung der crontab-Einträge.

$

Hier ist eine Liste aller möglichen Werte für all diese Felder. Wenn anstelle eines numerischen Werts ein Sternchen (*) verwendet wird, wird jeder mögliche Wert des Felds verwendet.

  • Minute: 0 bis 59
  • Stunden: 0 bis 23
  • Tag des Monats: 1 bis 31
  • Monat: 1 bis 12
  • Wochentag: 0 (Sonntag) bis 6 (Samstag)

Eine ausführliche Anleitung zur Verwendung von Crontab zum Automatisieren von Aufgaben finden Sie unter Einrichten von Cron-Jobs unter Linux. Hier ist ein weiteres kurzes Beispiel für einen Cron-Job, der jede Minute ausgeführt wird.

beim
Während Cron die primäre Art der Aufgabenplanung ist, bietet at die Möglichkeit, einen Befehl/ein Skript zu einer bestimmten Zeit oder in einem festen Intervall auszuführen. Beachten Sie jedoch, dass at den Zieljob einmal ausführt, während Cron den Job in dem Intervall erneut ausführen würde. Das at-Tool ist im Vergleich zu cron weniger beliebt, aber relativ einfacher zu bedienen. Sie können bestimmte Schlüsselwörter wie Mitternacht oder Teezeit (4 P.M.).

Dieses Tool ist in den meisten Linux-Distributionen nicht vorinstalliert. Führen Sie zur Installation unter den entsprechenden Befehl entsprechend Ihrer Distribution aus.

Für Debian/Ubuntu und Derivate.

$ Sudo apt install -y at


Für CentOS/RHEL und Derivate.

$ lecker installieren bei

Für Arch Linux und Derivate.

$ sudo Pacman -S at

Für Fedora und Derivate.

$ sudo dnf installieren unter

Nachdem die Installation abgeschlossen ist, aktivieren Sie den at-Daemon.

$ sudo systemctl enable --now atd.Bedienung


Die Arbeitsweise ist etwas anders. Wenn Sie bei anrufen, müssen Sie das Intervall für die Ausführung der gewünschten Aufgabe festlegen. Um beispielsweise einen bestimmten Befehl nach einer Stunde auszuführen, verwenden Sie den folgenden Befehl.

$ derzeit + 1 Stunde


Um die gewünschte Aufgabe bei 6 P . auszuführen.M., Führen Sie in sechs Tagen stattdessen den folgenden Befehl aus.

$ um 18 Uhr + 6 Tage


Wenn Sie den Befehl ausführen, fragen Sie nach Belieben nach den auszuführenden Befehlen command. Um die at-Eingabeaufforderung zu verlassen, drücken Sie „Strg + d.” At präsentiert eine Zusammenfassung der geplanten Aufgaben und der Zeit, zu der sie ausgeführt werden.

Dies ist nur eine grundlegende Verwendung. Eine konsistentere Methode zur Verwendung von at könnte darin bestehen, ein Bash-Skript auszuführen, das alle auszuführenden Aufgaben enthält. Sie möchten mehr über Bash-Scripting erfahren? Prüfen

$ um 18 Uhr + 6 Tage -ff