Verwendung des Linux-Crontab-Befehls

Verwendung des Linux-Crontab-Befehls

1. Befehlseinführung

Der Befehl contab (Cron-Tabelle) wird verwendet, um Benutzeraufgaben zu verwalten, die regelmäßig ausgeführt werden müssen, ähnlich wie geplante Aufgaben unter Windows. Wenn das Betriebssystem installiert wird, wird dieses Servicetool standardmäßig installiert und der Crond-Prozess wird automatisch gestartet. Der Crond-Prozess prüft jede Minute, ob eine Aufgabe ausgeführt werden muss, und führt die Aufgabe aus, wenn eine vorhanden ist.

Die Aufgabenplanung unter Linux ist in zwei Kategorien unterteilt: Systemaufgabenplanung und Benutzeraufgabenplanung.

Planung von Systemaufgaben: Die Arbeit, die das System regelmäßig ausführen muss, wie z. B. das Schreiben von Cache-Daten auf die Festplatte, das Bereinigen von Protokollen usw. Die Datei /etc/crontab ist die Konfigurationsdatei für die Planung von Systemaufgaben.

Planung von Benutzeraufgaben: Aufgaben, die Benutzer regelmäßig ausführen müssen, z. B. Sicherung von Benutzerdaten, geplante E-Mail-Erinnerungen usw. Benutzer können das Crontab-Tool verwenden, um ihre eigenen geplanten Aufgaben anzupassen. Alle benutzerdefinierten Crontab-Dateien werden im Verzeichnis /var/spool/cron gespeichert und ihre Dateinamen stimmen mit dem Benutzernamen überein.

Mit den Dateien /etc/cron.deny und /etc/cron.allow kann der Systemadministrator Benutzern den Besitz eigener Crontab-Dateien verbieten bzw. erlauben.

2. Befehlsformat

crontab [-u BENUTZER] DATEI
crontab [-u BENUTZER] [-l | -r | -e] [-i] [-s]
crontab -n [ HOSTNAME ]
crontab -c

3. Option Beschreibung

-u
	Geben Sie den Benutzernamen zum Festlegen der geplanten Aufgabe an -l
	Aktuell geplante Aufgaben auflisten -r
	Geplante Aufgaben löschen -e
	Bearbeiten Sie die geplanten Aufgaben eines Benutzers. Die Aufgabe wird in der Datei mit dem gleichen Namen wie der Benutzername im Verzeichnis /var/spool/cron gespeichert.
	Fragen Sie den Benutzer, ob er den Löschvorgang bestätigen soll, bevor Sie die geplante Aufgabe löschen -s
	Vor dem Bearbeiten/Ersetzen den aktuellen SELinux-Sicherheitskontextstring als MLS_LEVEL an die Crontab-Datei -n [HOSTNAME] anhängen
	Diese Option wird nur verwendet, wenn cron(8) mit der Option -c gestartet wird, um eine Clusterumgebung zu unterstützen. Sie dient dazu, anzugeben, welcher Host im Cluster die in der Crontab-Datei angegebenen geplanten Aufgaben ausführen soll. Wenn der Hostname weggelassen wird, wird der von gethostname(2) zurückgegebene lokale Hostname verwendet.
	Diese Option wird nur verwendet, wenn cron(8) mit der Option -c gestartet wird, um Clusterumgebungen zu unterstützen. Sie wird verwendet, um abzufragen, welcher Host im Cluster derzeit die geplanten Aufgaben in der Crontab-Datei ausführt.

4. Benutzerprofil

Die Crontab-Datei speichert die geplanten Aufgaben des Benutzers in einem bestimmten Format in einer Datei mit demselben Namen wie der Benutzername im Verzeichnis /var/spool/cron. Wenn Sie beispielsweise der Root-Benutzer sind und eine Aufgabe hinzufügen, befindet sich unter dem Pfad eine Root-Datei. Der Linux-Cron-Dienst liest jede Minute den gesamten Inhalt im Verzeichnis /var/spool/cron.

Jede Zeile der Crontab-Datei stellt eine Aufgabe dar. Jede Aufgabe ist in sechs Felder unterteilt. Die ersten fünf Felder sind Zeitfelder und das sechste Feld ist der auszuführende Befehl. Das Format ist wie folgt:

Minute Stunde Tag Monat Woche Befehl

Minute: Minute, der Wertebereich ist 0 bis 59;
Stunde: Stunde, der Wertebereich ist 0 bis 23;
Tagesdatum, der Wertebereich ist 1 bis 31;
Monat: Monat, der Wertebereich ist 1 bis 12, oder Jan, Feb, März, Apr …;
Woche: Wochentag, der Wertebereich ist 0 bis 7, oder So, Mo, Di, Mi, Do, Fr, Sa. Beachten Sie, dass 0 und 7 beide für Sonntag stehen;
Befehl ist der auszuführende Befehl, der ein Systembefehl oder eine von Ihnen selbst geschriebene Skriptdatei sein kann;

In jedem der oben genannten Zeitfelder können außerdem die folgenden Sonderzeichen verwendet werden:

* gibt alle möglichen Werte an. Minute ist beispielsweise mit * gekennzeichnet, was bedeutet, dass der Befehl jede Minute ausgeführt wird.
können Sie eine durch Kommas getrennte Liste von Werten angeben, zum Beispiel 1,2,5,7,8,9
- Sie können einen Bindestrich zwischen ganzen Zahlen verwenden, um einen Bereich darzustellen, beispielsweise steht 2-6 für 2,3,4,5,6
/ Sie können einen Schrägstrich verwenden, um die Häufigkeit des Zeitintervalls anzugeben. Beispielsweise ist Minute */2, was bedeutet, dass der Befehl alle zwei Minuten ausgeführt wird.

Beachten Sie, dass das Kommentarsymbol der Crontab-Datei # ist.

5. Systemkonfigurationsdateien

Zusätzlich zur Crontab-Datei des Benutzers sind die folgenden Systemkonfigurationsdateien mit Bezug auf geplante Aufgaben vorhanden:

/etc/crontab Konfigurationsdatei für geplante Systemaufgaben/etc/cron.d Automatische regelmäßige Ausführung von Aufgaben/etc/cron.hourly Aufgaben, die stündlich ausgeführt werden/etc/cron.daily Aufgaben, die täglich ausgeführt werden/etc/cron.weekly Aufgaben, die wöchentlich ausgeführt werden/etc/cron.monthly Aufgaben, die monatlich ausgeführt werden/etc/cron.allow In dieser Datei aufgeführte Benutzer dürfen geplante Aufgaben ausführen/etc/cron.deny In dieser Datei aufgeführte Benutzer dürfen geplante Aufgaben nicht ausführen/var/log/cron Crontab-Protokolldatei

Der Linux-Cron-Dienst liest jede Minute die Datei /etc/crontab und den gesamten Inhalt im Verzeichnis /etc/crontab.d. Aufgaben unter /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly und /etc/cron.monthly werden je nach entsprechendem Zeitraum auch indirekt aufgerufen.

6. Häufige Beispiele

(1) Fügen Sie eine geplante Aufgabe hinzu.

crontab -e
* * * * * Befehl # Befehl einmal pro Minute ausführen
3,15 * * * * Befehl # Ausführen in der 3. und 15. Minute von jeder Stunde 3,15 8-11 * * * Befehl # Execute in der 3. und 15. Minute von jeder Stunde von 8:00 bis 11:00 Uhr 3,15 8-11 * * 1 Befehl # ausführend in der 3. und 15. Ministerium Von 8:00 bis 11:00 Uhr 3,15 8-11 1 1 * Befehl # Ausführen in der 3. und 15. Minute des 1. Januar von 8:00 bis 11:00 Uhr jedes Jahr 0 */2 * * */sbin/service httpd restart # neu starten Sie Httpd in der 0. Minute alle zwei Stunden alle zwei Stunden

(2) Überprüfen Sie die geplanten Aufgaben.

crontab -l

(3) Löschen Sie die geplante Aufgabe, d. h. löschen Sie die Crontab-Datei im Verzeichnis /var/spool/cron. Gefährliche Aktion. Denken Sie bitte daran, rückwärts zu fahren.

crontab -r

(4) Stellen Sie die angegebene Crontab-Datei im Verzeichnis /var/spool/cron wieder her.

crontab DATEI

Oben finden Sie detaillierte Informationen zur Verwendung des Linux-Crontab-Befehls. Weitere Informationen zum Linux-Crontab-Befehl finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM!

Das könnte Sie auch interessieren:
  • Verwenden Sie den Crontab-Befehl in der Linux-Umgebung, um geplante periodische Ausführungsaufgaben einzurichten [einschließlich PHP-Ausführungscode].
  • Lösung für die zeitliche Steuerung der Linux-Crontab-Ausführung von Shell-Skripten, wenn bestimmte Befehle ausgeführt werden müssen
  • Detaillierte Erklärung und Zusammenfassung der Verwendung des Crontab-Befehls für geplante Linux-Aufgaben
  • Detaillierte Erläuterung des geplanten Ausführungsbefehls von Crontab unter Linux
  • Regelmäßiges Ausführen von Befehlen und Skripten unter Linux (cron, crontab, anacron)
  • Detaillierte Erläuterung der at- und crontab-Befehle zur geplanten Ausführung von Aufgaben in Linux
  • Linux Crontab-Befehle starten, ausführen und bearbeiten
  • Linux-Crontab-Befehlsformat und ausführliche Beispiele (empfohlen)

<<:  Lösung für Fremdschlüsselfehler bei der MySQL-Tabellenerstellung

>>:  Verwendung des Linux-Befehls ifconfig

Artikel empfehlen

Vue realisiert den Gleitkreuzeffekt des Balles

In diesem Artikelbeispiel wird der spezifische Co...

Vue-CLI - Aufzeichnung der Schritte zur mehrseitigen Verzeichnisverpackung

Seitenverzeichnisstruktur Beachten Sie, dass Sie ...

Eine Kurzanleitung zu Docker

Docker bietet eine Möglichkeit, Software automati...

Vue erzielt den Top-Effekt durch V-Show

html <div Klasse="nach oben" v-show=...

Lösung für die falsche Ausrichtung des Eingabecursors in Chrome, Firefox und IE

Detaillierte Erklärung zur Fehlplatzierung des Ein...

2017 neueste Version der Windows-Installation MySQL-Tutorial

1. Laden Sie zunächst die neueste Version von MyS...

Beispielcode zur Installation von ElasticSearch und Kibana unter Docker

1. Einleitung Elasticsearch erfreut sich derzeit ...