Cron ist ein effektives und beliebtes Befehlszeilenprogramm, mit dem eine Vielzahl von Aufgaben zu einem bestimmten Zeitpunkt ohne Benutzerinteraktion geplant werden können. Die geplanten Aufgaben werden als Cron-Jobs bezeichnet, während die Crontab die Liste der Datei mit den Cron-Jobs ist is.
In diesem Artikel werden wir mit verschiedenen Beispielshows erklären, wie Sie die crontab-Datei bearbeiten und verwenden können, um Aufgaben im Debian 10-System zu planen.
Cron kann verwendet werden, um Aufgaben in den folgenden Szenarien zu automatisieren:
- Ausführen geplanter Backups,
- Überprüfen des Speicherplatzes in einem bestimmten Intervall,
- Ausführen der automatischen Wartung,
- Regelmäßiges Entfernen unerwünschter Dateien,
- Netzwerkdiagnose ausführen
Syntax
Es ist einfacher mit cron zu arbeiten, wenn Sie die Syntax verstanden haben. Die allgemeine Syntax für die Verwendung von cron ist:
* * * * /Pfad/zu/Skript.SchJedes der Felder entspricht den folgenden:
Minute (0-59) Stunde (0-24) Tag_des_Monats (1-7) Monat_des_Jahres (1-12)Day_of_the_Week (0-6)-Befehl
Cron installieren
Cron ist in Debian 10 vorinstalliert. Wenn es jedoch auf Ihrem System fehlt, führen Sie den folgenden Befehl aus, um es zu installieren:
$ sudo apt install cronCrontab anzeigen
Um die Crontab-Datei anzuzeigen, verwenden Sie den folgenden Befehl:
$ crontab -lVerwenden Sie den folgenden Befehl, um die crontab-Datei eines bestimmten Nutzers anzuzeigen:
$ sudo crontab -u Benutzer -lCrontab bearbeiten
So bearbeiten Sie die crontab-Datei des aktuellen Benutzers:
$crontab -eSo bearbeiten Sie die crontab-Datei eines bestimmten Benutzers:
$ sudo crontab -u BenutzerWenn Sie die crontab-Datei zum ersten Mal bearbeiten, werden Sie aufgefordert, einen Editor auszuwählen:
Nach Auswahl des Editors erscheint folgendes Fenster.
Sie möchten beispielsweise ein Backup-Skript namens „backup“ ausführen.sh“ befindet sich täglich um 2:00 Uhr im Dokumentenverzeichnis. Dazu müssen Sie die folgende Zeile in Ihre crontab-Datei einfügen:
0 2 * * * /Dokumente/Backup.Sch
Im obigen Fenster können Sie Ihre Cron-Jobs einzeln hinzufügen add. Wenn Sie fertig sind, speichern und beenden Sie die Datei, danach werden alle Cron-Jobs automatisch in ihrem angegebenen Intervall ausgeführt.
Crontab entfernen
Um die crontab-Datei zu entfernen, geben Sie den folgenden Befehl in Terminal ein:
$ crontab -rLassen Sie uns nun eine Reihe von Beispielen für Cron-Jobs auf einem Linux-Rechner durchgehen.
1. Führe jede Minute einen Cron-Job aus
Um jede Minute einen Cron-Job auszuführen, fügen Sie die folgende Zeile in Ihre crontab-Datei ein:
* * * * * /Pfad/zu/Skript.Sch2. Alle 10 Minuten einen Cron-Job ausführen
Um einen Cron-Job so zu planen, dass er alle 10 Minuten ausgeführt wird, fügen Sie die folgende Zeile in Ihre Crontab-Datei ein.
*/10 * * * * /Pfad/zu/Skript.Sch3. Ausführen eines Cron-Jobs in bestimmten Monaten
So planen Sie einen Cron-Job für die Ausführung in bestimmten Monaten e.G. Fügen Sie im März, August, Dezember den Cron-Job wie folgt in Ihre Crontab-Datei ein:
* * * Jan,Mai,Aug * /Pfad/zu/Skript.Sch4. An ausgewählten Tagen einen Cron-Job ausführen
Wenn Sie möchten, dass Ihr Cron-Job an ausgewählten Tagen ausgeführt wird, nehmen wir an Sonntag und Freitag um 17:00 Uhr, sollte es wie folgt aussehen:.
0 17 * * Sonne,Fr /Pfad/zu/Skript.Sch5. Führen Sie täglich zu einer bestimmten Zeit einen Cron-Job aus
Um einen Cron-Job so zu planen, dass er täglich zu einer bestimmten Zeit ausgeführt wird, sagen wir um 3 Uhr morgens, fügen Sie diese Zeile in Ihre Crontab-Datei ein.
0 3 * * * /Pfad/zu/Skript.Sch6. Führen Sie einen Cron-Job an einem bestimmten Tag aus
Um einen Cron-Job so zu planen, dass er an einem bestimmten Tag ausgeführt wird, sagen wir, jeden Sonntag, fügen Sie diese Zeile in Ihre Crontab-Datei ein.
0 0 * * SONNE /Pfad/zu/Skript.SchDer Job wird jeden Sonntag um 00:00 Uhr ausgeführt.
7. Führen Sie mehrere Aufgaben in einem einzigen Cron-Job aus
Um mehrere Aufgaben in einem einzigen Cron-Job zu planen, fügen Sie alle Skripts in Ihrer Crontab-Datei hinzu, indem Sie sie durch ein Semikolon trennen.
* * * * * /Pfad/zu/Skript1.Sch; /Pfad/zu/Skript2.Sch8. Ausführen eines Cron-Jobs auf jeder Wochentag
Um einen Cron-Job so zu planen, dass er an jedem Wochentag von Montag bis Freitag ausgeführt wird, müssen Sie diese Zeile in Ihre Crontab-Datei einfügen.
0 0 * * 1-5 /Pfad/zu/Skript.SchDer Job wird an jedem Wochentag um 00:00 Uhr ausgeführt.
9. Führen Sie zweimal täglich einen Cron-Job aus
So planen Sie, dass ein Job zweimal täglich ausgeführt wird e.G. um 6 Uhr und 15 Uhr müssen Sie diese Zeile in Ihre crontab-Datei einfügen:
0 6,15 * * * /Pfad/zu/Skript.Sch10. Führe jede Stunde einen Cron-Job aus
Um einen Cron-Job so zu planen, dass er jede Stunde zur Minute 0 ausgeführt wird, müssen Sie diese Zeile in Ihre Crontab-Datei einfügen:
0 * * * * /Pfad/zu/Skript.SchWenn die aktuelle Uhrzeit beispielsweise 14:00 Uhr ist, wird der Job um 15:00 Uhr, 16:00 Uhr usw. ausgeführt.
11. Alle 3 Stunden einen Cron-Job ausführen
Um einen Cron-Job so zu planen, dass er alle 3 Stunden bei Minute 0 ausgeführt wird, müssen Sie diese Zeile in Ihre Crontab-Datei einfügen:
0 */3 * * * /Pfad/zu/Skript.SchWenn die aktuelle Uhrzeit beispielsweise 14:00 Uhr ist, wird der Job um 17:00 Uhr, 20:00 Uhr usw. ausgeführt.
12. Cron-Job am ersten eines jeden Monats um 16:00 Uhr ausführen
Um einen Job so zu planen, dass er am ersten jeden Monats um 16:00 Uhr ausgeführt wird, müssen Sie diese Zeile in Ihre crontab-Datei einfügen:
0 16 1 * * /Pfad/zu/Skript.SchZeichenfolgen in Crontab
Sie können auch die folgenden Zeichenfolgen anstelle der langen, sich wiederholenden Befehle verwenden.
@hourly- Cron-Job stündlich ausführen i.e. „0 * * * *“@midnight- Führe jeden Tag einen Cron-Job aus i.e. „0 0 * * *“
@täglich- wie Mitternacht
@weekly- Cronjob jede Woche ausführen, i.e. „0 0 * * 0“
@monthly- Führen Sie jeden Monat einen Cron-Job aus.e. „0 0 1 * *“
@annually- Cronjob jedes Jahr ausführen i.e. „0 0 1 1 *“
@jährlich- wie @jährlich
@reboot- Cron-Job bei jedem Booten ausführen
Um beispielsweise den Cron-Job jeden Tag in der ersten Minute und der ersten Stunde auszuführen, fügen Sie die folgende Zeile hinzu:
@täglich /Pfad/zu/Skript.SchUm beispielsweise den Cron-Job bei jedem Neustart des Servers auszuführen:
@reboot /Pfad/zu/Skript.SchDas ist alles! In diesem Artikel haben wir gelernt, wie man verschiedene Aufgaben mit crontab im Debian-System automatisieren kann. Mit den obigen Beispielen können Sie jede Art von Job so planen, dass sie ohne Benutzerinteraktion initiiert wird.