Cron Expression Builder

Cron-Ausdruck für monatlich am 1. Tag: 0 0 1 * *

Der Cron-Ausdruck 0 0 1 * * führt am 1. jedes Monats um Mitternacht aus. Deckt @monthly, die Lösung für den letzten Monatstag, Schaltjahres-Eckfälle und das Überspringen der Tage 29/30/31 ab.

100% clientseitig. Deine Daten verlassen niemals deinen Browser.

Minute
Stunde
Tag des Monats
Monat
Wochentag

At 12:00 AM, on day 1 of the month

Nächste 5 Ausführungen
  • 1.Wed, Jul 1, 2026, 00:00
  • 2.Sat, Aug 1, 2026, 00:00
  • 3.Tue, Sep 1, 2026, 00:00
  • 4.Thu, Oct 1, 2026, 00:00
  • 5.Sun, Nov 1, 2026, 00:00
Kurzreferenz
*Beliebiger Wert
,Listentrennzeichen
-Bereich
/Schritt
1-5Bereich 1 bis 5
*/15Alle 15 Einheiten

Verwandte Werkzeuge

Der Ausdruck 0 0 1 * *

Der Cron-Ausdruck 0 0 1 * * wird in Minute 0, Stunde 0, am Tag 1 jedes Monats ausgelöst, unabhängig davon, welcher Monat oder welches Jahr es ist. Der Job läuft um Mitternacht am 1. Januar, 1. Februar, 1. März und so weiter, genau 12 Mal pro Jahr.

FeldWertBedeutung
Minute0Zu Beginn der Stunde
Stunde0Mitternacht
Tag des Monats1Der 1. Tag des Monats
Monat*Jeden Monat
Wochentag*Jeden Tag

Der Alias @monthly

@monthly ist die Kurzform für 0 0 1 * *:

@monthly    /opt/jobs/billing-cycle
# gleichbedeutend mit:
0 0 1 * *   /opt/jobs/billing-cycle

Eckfälle mit Monatstagswerten

Monate mit weniger als 31 Tagen

Wenn du einen Job auf Tag 29, 30 oder 31 planst, wird er für Monate, die diese Tage nicht haben, stillschweigend übersprungen:

AusdruckÜbersprungene Monate
0 0 29 * *Februar (in den meisten Jahren)
0 0 30 * *Februar
0 0 31 * *Feb, Apr, Jun, Sep, Nov

Schaltjahr und 29. Februar

0 0 29 * * überspringt den Februar in Nicht-Schaltjahren vollständig.

Das Problem des letzten Monatstags

Praktische Lösung: Führe den Job täglich aus und prüfe das Datum im Skript:

#!/bin/bash
if [ "$(date -d tomorrow +%d)" != "01" ]; then
  exit 0
fi
# eigentliche Job-Logik hier

Reale Anwendungsfälle für monatliches Cron

Abrechnung und Rechnungsstellung

Rechnungen generieren, Abonnementverlängerungen verarbeiten oder nutzungsbasierte Gebühren neu berechnen.

Monatsberichte

Finanz-, Verkaufs- und Betriebsberichte, die Daten des Vormonats zusammenfassen.

Datenarchivierung

Daten, die älter als ein Monat sind, in Kaltlagerung verschieben.

Zertifikats- und Schlüsselrotation

API-Schlüssel, Aktualisierungstokens oder Geheimnisse in monatlichem Rhythmus rotieren.

Überprüfen der Planung

from croniter import croniter
from datetime import datetime

cron = croniter("0 0 1 * *", datetime.now())
for _ in range(5):
    print(cron.get_next(datetime))