DevToolPal
हि

Cron एक्सप्रेशन

हर तिमाही

जनवरी, अप्रैल, जुलाई और अक्टूबर की पहली तारीख को 00:00 पर चलता है।

0 0 1 1,4,7,10 * Cron एक्सप्रेशन पार्सर में खोलें

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

फ़ील्ड मान मेल खाता है
मिनट 0 0
घंटा 0 0
महीने का दिन 1 1
महीना 1,4,7,10 जनवरी, अप्रैल, जुलाई अक्टूबर
हफ़्ते का दिन * हर मान

अगली रन टाइम

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

  1. बुध, 1 अप्रैल 2026, 00:00
  2. बुध, 1 जुल॰ 2026, 00:00
  3. गुरु, 1 अक्टू॰ 2026, 00:00
  4. शुक्र, 1 जन॰ 2027, 00:00
  5. गुरु, 1 अप्रैल 2027, 00:00
  6. गुरु, 1 जुल॰ 2027, 00:00

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

crontab
0 0 1 1,4,7,10 * /path/to/command

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

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

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

Quartz
0 0 0 1 1,4,7,10 ?

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

Spring
@Scheduled(cron = "0 0 0 1 1,4,7,10 *")

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

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

› हर तिमाही के आख़िरी दिन कैसे चलाएँ?

महीने 3,6,9,12 को आख़िरी दिन की जाँच के साथ जोड़ें: 0 0 28-31 3,6,9,12 * और तारीख जाँच।

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

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

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

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