Menu
العربية

مولد تعبير cron

أنشئ جداول cron وفسرها وعاين أوقات التشغيل القادمة.

Last updated

إعدادات مسبقة
التعبير
دقيقة*/15
ساعة*
يوم من الشهر*
شهر*
يوم من الأسبوع*
بلغة بسيطةصالح

كل 15 دقيقة

أوقات التشغيل الخمس القادمة (التوقيت المحلي)
  • 12026-04-26 21:45 Sun
  • 22026-04-26 22:00 Sun
  • 32026-04-26 22:15 Sun
  • 42026-04-26 22:30 Sun
  • 52026-04-26 22:45 Sun

ما هو تعبير cron؟

تعبير cron هو طريقة مختصرة لوصف جدول زمني متكرر. إنه نفس الصياغة التي يستخدمها cron في Unix — أول مجدول مهام في Linux — وقد امتد استخدامه إلى معظم منصات تشغيل المهام التي ستصادفها: CronJobs في Kubernetes، وجدولة GitHub Actions، وAWS EventBridge، وCloudflare Workers، وVercel cron، ومعظم منصات CI/CD.

الصياغة تبدو مرعبة لكنها في الحقيقة مجرد خمسة حقول مفصولة بمسافات: الدقيقة، الساعة، يوم الشهر، الشهر، يوم الأسبوع. كل حقل إما رقم، أو قائمة (1,15)، أو مدى (9-17)، أو خطوة (*/5)، أو رمز شامل (*). الأداة الجيدة لـ cron تحوّل التعبير إلى جملة واضحة وتعرض أوقات التشغيل القادمة حتى تتأكد من صحته قبل النشر.

بعض المنصات توسّع الصياغة الأساسية ذات الخمسة حقول بإضافة حقل *الثواني* في البداية (Quartz وSpring وKubernetes ذو الستة حقول)، أو حقل *السنة* في النهاية. تأكّد دائمًا من الصيغة التي يقبلها مجدولك قبل لصق أي تعبير.

ما ستتعلمه أثناء بناء جداول cron

  • تعبير cron القياسي يتكوّن من 5 حقول: الدقيقة، الساعة، يوم الشهر، الشهر، يوم الأسبوع.
  • * تعني "أي قيمة" لذلك الحقل — وهي السبب الأشهر في تشغيل الجدولة عددًا من المرات أكبر مما هو متوقع.
  • */N تعني "كل N وحدة" — فمثلاً */5 في حقل الدقيقة تعني "كل 5 دقائق".

كيف تكتب تعبير cron خطوة بخطوة

  1. ابدأ من إعداد جاهز

    اختر إعدادًا قريبًا مما تريده — كل دقيقة، كل ساعة، يوميًا الساعة 9 صباحًا، أيام العمل الساعة 9 صباحًا، شهريًا. سيظهر التعبير في المحرر.

  2. عدّل كل حقل

    حرّر الدقيقة والساعة ويوم الشهر والشهر ويوم الأسبوع. استخدم * لأي قيمة، أو قوائم بفواصل، أو مديات (9-17)، أو خطوات (*/15).

  3. اقرأ الشرح بلغة واضحة

    تحوّل الأداة تعبيرك إلى جملة مفهومة (عند الساعة 09:00 في كل يوم عمل). إن لم تطابق الجملة ما أردته، فالتعبير خاطئ.

  4. عاين مواعيد التشغيل القادمة

    تحقق من أوقات التشغيل الـ 5 إلى 10 القادمة بتوقيتك المحلي. وانتبه لتغييرات التوقيت الصيفي إذا كانت الجدولة قريبة من موعد التحويل.

  5. انسخه إلى مجدولك

    ضع التعبير في crontab لديك، أو في GitHub Actions، أو في Kubernetes CronJob، أو أي مجدول تستخدمه.

مرجع سريع لحقول cron

حقول تعبير cron القياسي الخمسة، بالترتيب. المرجع: صفحة crontab(5) في POSIX.

الموضعالحقلالمدىرموز خاصة
1الدقيقة0–59* , - /
2الساعة0–23* , - /
3يوم الشهر1–31* , - / ? (في بعض اللهجات)
4الشهر1–12 أو JANDEC* , - /
5يوم الأسبوع0–6 (الأحد=0) أو SUNSAT* , - /

أمثلة على تعابير cron لتجربتها

كل 5 دقائق

التعبير

*/5 * * * *

يُقرأ كـ

كل 5 دقائق — عند بداية الساعة وكل 5 دقائق بعدها.

قيم الخطوة (*/5) هي أسهل طريقة للتعبير عن "كل N" دون سرد كل رقم. شائعة في فحوصات الصحة ومهام الاستطلاع الدورية.

أيام العمل عند الساعة 9 صباحًا

التعبير

0 9 * * 1-5

يُقرأ كـ

عند الساعة 09:00 من الإثنين إلى الجمعة.

مدى يوم الأسبوع 1-5 يعني الإثنين–الجمعة. استخدمه لتذكيرات ساعات العمل والملخصات اليومية لأيام العمل فقط.

أول يوم من كل شهر عند منتصف الليل

التعبير

0 0 1 * *

يُقرأ كـ

عند الساعة 00:00 من اليوم الأول في كل شهر.

يوم الشهر 1 مع * في باقي الحقول يمنحك مهمة شهرية حقيقية. شائع في الفوترة والتقارير ومهام التبديل الدورية.

مرتين في الساعة، خلال ساعات العمل، أيام العمل

التعبير

0,30 9-17 * * 1-5

يُقرأ كـ

عند الدقيقة 0 و30 بين الساعة 09:00 و17:00، من الإثنين إلى الجمعة.

قائمة بفواصل (0,30) مع مدى (9-17) مع أيام العمل. هذا النوع من الجدولة يناسب تحديث BI أو إفراغ طوابير لا تهم إلا في أوقات الدوام.

أخطاء شائعة في cron

  • نسيان المنطقة الزمنية. معظم خوادم cron تشتغل بالمنطقة الزمنية لـ *الخادم* — لا منطقتك أنت. اضبط المنطقة الزمنية صراحةً متى دعمتها المنصة.
  • تحديد يوم الشهر ويوم الأسبوع معًا. في cron الكلاسيكي على Unix، تشتغل الجدولة في اليوم الذي يطابق *أيًا منهما* — وهذا ما يفاجئ معظم الناس في أول مرة.
  • استخدام */45 وتوقّع أن يشتغل كل 45 دقيقة. قيم الخطوة تُحسب بدءًا من 0، فـ */45 يشتغل عند 0 و45 — وليس بفاصل 45 دقيقة فعلي.

أسئلة شائعة عن تعابير cron

كيف أكتب تعبير cron؟
تعبير cron القياسي يتكوّن من خمسة حقول مفصولة بمسافات: الدقيقة، الساعة، يوم الشهر، الشهر، يوم الأسبوع. استخدم * لـ *أي قيمة*، أو رقمًا لقيمة محددة، أو قائمة بفواصل (1,15)، أو مدى (9-17)، أو خطوة (*/5).
ماذا يعني */5 * * * *؟
يعني "كل 5 دقائق". الـ */5 في حقل الدقيقة يجعله يشتغل عند الدقيقة 0 وكل 5 دقائق بعدها — 0، 5، 10، 15، …، 55 — والـ * في باقي الحقول يعني أنه يشتغل في كل ساعة وكل يوم وكل شهر وكل يوم في الأسبوع.
ما المنطقة الزمنية التي يستخدمها cron؟
افتراضيًا، يستخدم cron المنطقة الزمنية للنظام الذي يشتغل عليه. معظم مجدولات السحابة تتيح ضبط المنطقة الزمنية صراحةً (TZ=Europe/Berlin، أو تعابير الجدولة في AWS، إلخ). عند الشك، احفظ جداولك بتوقيت UTC.
هل يمكن لتعبير cron أن يشتغل كل ثانية؟
cron القياسي ذو الخمسة حقول أصغر وحدة فيه هي الدقيقة، فأقصى دقة ممكنة هي مرة كل دقيقة. أما Quartz cron وSpring cron وبعض إصدارات Kubernetes فتضيف حقلًا سادسًا للـ *ثواني* لجدولات أقل من الدقيقة.
ما الفرق بين 0 0 * * 0 و0 0 * * 7؟
كلاهما يصف الأحد عند منتصف الليل. يوم الأسبوع يتراوح بين 0–6 (الأحد–السبت) في معظم تطبيقات cron، لكن 7 مقبولة أيضًا للأحد توافقًا مع بعض اللهجات.

أدوات مطورين أخرى

تعلّم البرمجة مع Coddy

ابدأ الآن