DevToolPal
हि

Cron एक्सप्रेशन

हर सोमवार

हर सोमवार 09:00 पर चलता है, जैसे साप्ताहिक रिपोर्ट के लिए।

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

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

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

अगली रन टाइम

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

  1. सोम, 5 जन॰ 2026, 09:00
  2. सोम, 12 जन॰ 2026, 09:00
  3. सोम, 19 जन॰ 2026, 09:00
  4. सोम, 26 जन॰ 2026, 09:00
  5. सोम, 2 फ़र॰ 2026, 09:00
  6. सोम, 9 फ़र॰ 2026, 09:00

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

crontab
0 9 * * 1 /path/to/command

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

Kubernetes CronJob
apiVersion: batch/v1
kind: CronJob
metadata:
  name: every-monday
spec:
  schedule: "0 9 * * 1"
  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 9 * * 1'
  workflow_dispatch:

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

Quartz
0 0 9 ? * MON

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

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

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

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

› हर दूसरे सोमवार को कैसे चलाएँ?

cron में "हर दो हफ़्ते" नहीं है। हर सोमवार चलाएँ और विषम ISO हफ़्तों में स्क्रिप्ट को बाहर निकलने दें, जैसे [ $(( $(date +\%V) \% 2 )) -eq 0 ]।

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

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

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

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