DevToolPal
हि

Cron एक्सप्रेशन

रोज़ आधी रात को

रोज़ 00:00 पर एक बार चलता है। @daily और @midnight मैक्रो जैसा ही।

0 0 * * * Cron एक्सप्रेशन पार्सर में खोलें

फ़ील्ड-दर-फ़ील्ड

फ़ील्ड मान मेल खाता है
मिनट 0 0
घंटा 0 0
महीने का दिन * हर मान
महीना * हर मान
हफ़्ते का दिन * हर मान

अगली रन टाइम

उदाहरण: 1 जनवरी 2026 के बाद पहले 6 रन (UTC)।

  1. शुक्र, 2 जन॰ 2026, 00:00
  2. शनि, 3 जन॰ 2026, 00:00
  3. रवि, 4 जन॰ 2026, 00:00
  4. सोम, 5 जन॰ 2026, 00:00
  5. मंगल, 6 जन॰ 2026, 00:00
  6. बुध, 7 जन॰ 2026, 00:00

इस्तेमाल के लिए तैयार संस्करण

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

यह लाइन crontab -e से जोड़ें। CRON_TZ या TZ सेट न हो तो यह सर्वर के टाइम ज़ोन में चलती है।

Kubernetes CronJob
apiVersion: batch/v1
kind: CronJob
metadata:
  name: every-day-at-midnight
spec:
  schedule: "0 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"]

spec.timeZone सेट करें (Kubernetes 1.27+); इसके बिना शेड्यूल controller manager के टाइम ज़ोन, आम तौर पर UTC, पर चलता है।

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

GitHub Actions हमेशा UTC इस्तेमाल करता है, कम से कम 5 मिनट का अंतराल मानता है, और ज़्यादा लोड में शेड्यूल्ड रन देर से शुरू कर सकता है।

Quartz
0 0 0 * * ?

Quartz में सेकंड सबसे पहले आते हैं, और महीने के दिन या हफ़्ते के दिन में से एक में ? चाहिए। दिन रविवार से 1–7 गिने जाते हैं, इसलिए नाम लिखना ज़्यादा सुरक्षित है।

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

Spring @Scheduled(cron = …) छह फ़ील्ड लेता है: सेकंड, फिर सामान्य पाँच।

अक्सर पूछे जाने वाले सवाल

› क्या आधी रात रोज़ाना के काम के लिए अच्छा समय है?

यह सबसे भीड़ वाला समय है। अगर काम को बस रोज़ एक बार चलना है, तो कोई शांत समय चुनें, और याद रखें कि लोकल टाइम ज़ोन में डेलाइट सेविंग बदलाव सुबह के घंटे छोड़ या दोहरा सकते हैं।

› 0 0 * * * किस टाइम ज़ोन में चलता है?

Cron उस मशीन या सेवा का टाइम ज़ोन इस्तेमाल करता है जो उसे चलाती है। Linux पर यह सिस्टम टाइम ज़ोन है, जब तक CRON_TZ या TZ सेट न हो; Kubernetes CronJob में spec.timeZone सेट कर सकते हैं; GitHub Actions हमेशा UTC इस्तेमाल करता है।

› डिप्लॉय करने से पहले इस शेड्यूल को कैसे जाँचें?

इस साइट के Cron एक्सप्रेशन पार्सर में 0 0 * * * खोलें। यह हर फ़ील्ड समझाता है और आने वाले रन आपके लोकल समय या UTC में दिखाता है, सब कुछ ब्राउज़र में।