DevToolPal
DE

Cron-Ausdruck

Jede Stunde

Läuft zur Minute 0 jeder Stunde, 24-mal am Tag. Entspricht dem Makro @hourly.

0 * * * * Im Cron-Parser öffnen

Feld für Feld

Feld Wert Trifft zu auf
Minute 0 0
Stunde * Jeder Wert
Tag des Monats * Jeder Wert
Monat * Jeder Wert
Wochentag * Jeder Wert

Nächste Ausführungen

Beispiel: die ersten 6 Ausführungen nach dem 1. Januar 2026 (UTC).

  1. Do., 1. Jan. 2026, 01:00
  2. Do., 1. Jan. 2026, 02:00
  3. Do., 1. Jan. 2026, 03:00
  4. Do., 1. Jan. 2026, 04:00
  5. Do., 1. Jan. 2026, 05:00
  6. Do., 1. Jan. 2026, 06:00

Fertige Varianten

crontab
0 * * * * /path/to/command

Fügen Sie die Zeile mit crontab -e hinzu. Sie läuft in der Zeitzone des Servers, sofern CRON_TZ oder TZ nicht gesetzt ist.

Kubernetes CronJob
apiVersion: batch/v1
kind: CronJob
metadata:
  name: every-hour
spec:
  schedule: "0 * * * *"
  timeZone: "Etc/UTC"
  concurrencyPolicy: Forbid
  jobTemplate:
    spec:
      template:
        spec:
          restartPolicy: OnFailure
          containers:
            - name: job
              image: busybox:1.36
              command: ["/bin/sh", "-c", "date; echo run"]

Setzen Sie spec.timeZone (Kubernetes 1.27+); sonst gilt die Zeitzone des Controller Managers, meist UTC.

GitHub Actions
on:
  schedule:
    - cron: '0 * * * *'
  workflow_dispatch:

GitHub Actions verwendet immer UTC, erlaubt Intervalle ab 5 Minuten und startet geplante Läufe bei hoher Last eventuell verspätet.

Quartz
0 0 * * * ?

Quartz stellt die Sekunden voran und braucht ? entweder im Tag des Monats oder im Wochentag. Die Tage zählen 1–7 ab Sonntag, Namen sind daher sicherer.

Spring
@Scheduled(cron = "0 0 * * * *")

Spring @Scheduled(cron = …) erwartet sechs Felder: Sekunden und dann die üblichen fünf.

FAQ

› Warum sollte man bei stündlichen Jobs Minute 0 meiden?

Viele Jobs laufen zur vollen Stunde und erzeugen Lastspitzen auf gemeinsam genutzten Servern und APIs. Wenn die genaue Zeit egal ist, wählen Sie eine beliebige Minute wie 17 * * * *.

› In welcher Zeitzone läuft 0 * * * *?

Cron verwendet die Zeitzone der Maschine oder des Dienstes, der ihn ausführt. Unter Linux ist das die Systemzeitzone, sofern CRON_TZ oder TZ nicht gesetzt ist; Kubernetes-CronJobs akzeptieren spec.timeZone; GitHub Actions nutzt immer UTC.

› Wie prüfe ich den Zeitplan vor dem Deployment?

Öffnen Sie 0 * * * * im Cron-Parser dieser Website. Er erklärt jedes Feld und listet die nächsten Ausführungen in Ihrer Ortszeit oder in UTC auf, direkt im Browser.