So planen Sie einen Cron -Job, um am letzten Tag eines jeden Monats zu laufen

So planen Sie einen Cron -Job, um am letzten Tag eines jeden Monats zu laufen
Das Cron -Dienstprogramm ist ein hilfreiches Tool, um Aufgaben zu automatisieren, die für ein bestimmtes Datum und eine bestimmte Uhrzeit ausgeführt werden sollen. Zum Beispiel können Sie einen Job automatisieren, der jeden letzten Tag des Monats zu einem bestimmten Zeitpunkt ausgeführt wird. Die Automatisierung von Aufgaben ist etwas, das Sie nicht darauf verzichten können, insbesondere als Administrator. Es kann eine Sicherung sein, die Sie erstellen müssen, um verschiedene Skripte auszuführen. Um nicht vergessen zu werden, Skripte auszuführen.

Dieser Leitfaden zeigt, wie Sie einen Cron -Job erstellen können, insbesondere einen, der am letzten Tag eines jeden Monats ausgeführt wird.

Arbeiten mit Cron Jobs

Sie müssen eine Crontab -Datei für den gegebenen Benutzer erstellen, um einen Cron -Job unter Linux, Unix oder macOS zu erstellen. Der Crontab Die Datei enthält Tabellen mit fünf Feldern, in denen Sie Datum und Uhrzeit des Cron -Jobs und den vollständigen Pfad zum Skript oder Befehl zum Ausführen angeben können.

Die Syntax einer Crontab -Datei ist wie gezeigt:

Minute Hour Date_of_month Monat Tag_of_week Befehl/Skript

Verwenden Sie den folgenden Befehl, um die Crontab -Datei zu öffnen:

$ crontab -e

Hier haben wir eine Crontab -Datei für den aktuellen Benutzer geöffnet. Wenn Sie den Auftrag für einen bestimmten Benutzer planen müssen, verwenden Sie die folgende Syntax.

$ crontab -e -u

Wenn Ihre Crontab -Datei geöffnet ist, können Sie Ihren Cron -Job unten hinzufügen.

Zum Beispiel, wenn wir einen Cron -Job erstellen müssen, der jeden ausführt erster Tag Von jedem Monat wäre der Cron -Job wie gezeigt:

$ 10 10 1 * */path/to/script.Sch

Das obige schafft einen Cron -Job, der jeden ausführt 10:10 Uhr jeden Monat am ersten Tag.

Planen Sie den Cron -Job am letzten Tag eines jeden Monats

Die Ermittlung des letzten Tages des Monats kann eine Herausforderung sein, wie es einige Monate haben 28, 29, 30, oder 31 als das letzte Datum. Außerdem das Feld für die Monatstag Nimmt einen bestimmten Tag und gibt ihm eine Liste möglicher Tage an einem falschen Tag aus.

Der Trick besteht darin, einen Befehl anzugeben, der überprüft, ob am nächsten Tag der erste Tag des Monats ist. Wenn ja, bedeutet dies, dass der aktuelle Tag der letzte des Monats ist und der Cron -Job dann ausführen kann.

Der folgende Befehl überprüft und gibt das Datum von morgen zurück:

$ Datum +%d -d morgen

Mit demselben Konzept können wir eine Bedingung erstellen, die, wenn das Datum von morgen zurückgibt 01-Das heißt, es ist der erste Tag, an dem der Cron-Job ausgeführt werden muss.

Zum Beispiel können wir den Befehl angeben, um eine bestimmte Ausgabe wiederzugeben und zu überprüfen, ob er ausgeführt wird, wenn er zur Crontab -Datei hinzugefügt wird. Ändern wir den obigen Befehl wie unten gezeigt:

$ ["$ (Datum +\%d -d morgen)" = "01"] && echo "tommorow ist 1st"

Anstelle des Befehls, der die Ausgabe anzeigt, um zu bestätigen, dass morgen der erste Tag des Monats ist, können wir ihn so einstellen, dass wir unseren Cron -Job ausführen.

Der neue Befehl wäre:

$ 30 13 28-31 * * ["$ (Datum +\%d -d morgen)" = "01"] &&/home/kyle/linuxHint.Sch

Der obige Cron -Job würde jeden ausführen 13:30 Uhr von jedem letzten Tag des Monats. Unabhängig davon, ob der letzte Tag 28,29, 30 oder 31 ist, wird das angegebene Skript ausgeführt.

Beachten Sie, dass wir die möglichen Daten eines jeden letzten Tages des Monats auflisten und den Befehl geben, der überprüft. Einmal bestätigt, wird das Skript ausgeführt.

Abschluss

Dieser Leitfaden bot einen praktischen Leitfaden zur Planung eines, wenn Sie an der Planung eines Cron-Jobs festgefahren sind, der jeden letzten Tag eines jeden Monats läuft. Wir haben gesehen, wie man den letzten Tag eines jeden Monats ermittelt und einen Cron -Job plant.