ما الذي تفعله هذه الأداة
تفك تعبير cron إلى لغة طبيعية، وتسرد التشغيلات الخمس التالية، وتُفصّل كل حقل (الدقيقة، الساعة، اليوم من الشهر، الشهر، اليوم من الأسبوع) لتتحقّق من الجدول قبل نشره. تدعم الخطوات (*/15) والنطاقات (1-5) والقوائم (1,15,30) والأسماء (MON، JAN) والاختصارات الشائعة (@hourly، @daily، @weekly، @monthly، @yearly).
متى تستخدمها
- التأكد من أن «كل ثلاثاء الساعة 3 صباحاً» هو فعلاً
0 3 * * 2وليس0 3 * * TUE(وكلاهما يعمل). - معرفة موعد التشغيل التالي بعد عملية نشر.
- التحقّق من جدول مستخرج من بيان
CronJobعلى Kubernetes. - الترجمة ذهنياً بين صيغة AWS EventBridge وصيغة cron القياسية.
كيف تعمل
يتعامل المحلّل مع cron القياسي ذي الخمسة حقول — الدقيقة، الساعة، اليوم من الشهر، الشهر، اليوم من الأسبوع — إضافةً إلى الاختصارات المسمّاة. لا يتعامل مع لهجة Quartz ذات الستة حقول (التي تضيف حقل ثوانٍ) ولا صيغة AWS ذات السبعة حقول (التي تضيف حقل سنة)، فهذه مواصفات مختلفة.
يمشي حساب التشغيل التالي دقيقةً بدقيقة، فاحصاً كل حقل. هذا بطيء في أسوأ الحالات (جدول يعمل مرة واحدة في السنة يحتاج نحو 525,600 تكراراً) لكنه غير ملحوظ بمقياس البشر.
ملاحظات
اليوم من الشهر واليوم من الأسبوع يُربطان بـ OR لا AND. 0 0 1 * MON لا يعني «أول يوم في الشهر إن كان اثنين» — بل يعني «أول يوم في الشهر، أو أي اثنين». هذا سلوك Vixie cron التاريخي ويُربك الجميع تقريباً.
الأحد 0 أم 7؟ كلاهما. تقبل معظم تنفيذات cron أيّاً منهما. SUN مقبولة كذلك.
هل @reboot مدعوم؟ لا — هذه توجيهة خاصة بـ system cron فقط ولا معنى لها في الزمن الحقيقي، فلا يمكننا معاينتها.
أدوات ذات صلة
- محوّل الطوابع الزمنية — تحقّق من أوقات التشغيل التالية بمنطقتك الزمنية
- اختبار التعابير المنتظمة — لمطابقة سلاسل cron برمجياً