كيفية بناء تعبيرات cron

· 4 دقيقة للقراءة

تعبيرات cron هي الطريقة القياسية لتعريف جداول متكرّرة في Linux ومنصات السحابة وخطوط أنابيب CI/CD ومجدولات المهام. الصياغة مدمجة لكنها غير بديهية — يظهر لك مولّد بصري بدقة متى ستعمل مهمتك.

صياغة cron

يحتوي تعبير cron على 5 حقول:

┌───────────── الدقيقة (0-59)
│ ┌───────────── الساعة (0-23)
│ │ ┌───────────── يوم الشهر (1-31)
│ │ │ ┌───────────── الشهر (1-12)
│ │ │ │ ┌───────────── يوم الأسبوع (0-6، الأحد=0)
│ │ │ │ │
* * * * *

جداول cron الشائعة

الجدول التعبير المعنى
كل دقيقة * * * * * يعمل كل 60 ثانية
كل 5 دقائق */5 * * * * عند :00 و:05 و:10 و:15...
كل ساعة 0 * * * * في بداية كل ساعة
كل يوم في منتصف الليل 0 0 * * * مرة واحدة يوميًا في 00:00
كل يوم في الساعة 9 صباحًا 0 9 * * * مرة واحدة يوميًا في 09:00
كل يوم اثنين في الساعة 8 صباحًا 0 8 * * 1 أسبوعيًا يوم الاثنين
الأول من كل شهر 0 0 1 * * شهريًا في منتصف الليل في اليوم الأول
أيام العمل في الساعة 6 مساءً 0 18 * * 1-5 من الاثنين إلى الجمعة

كيفية بناء تعبير cron

  1. حدّد جدولك الزمني — استخدم عناصر التحكّم البصرية لتحديد قيم الدقيقة والساعة واليوم والشهر ويوم الأسبوع. أو ابدأ من إعداد مسبق مثل «كل ساعة» أو «كل يوم في منتصف الليل».
  2. عاين التشغيلات — يعرض المولّد التشغيلات الـ 5 التالية للتحقّق من أن الجدول الزمني صحيح.
  3. انسخ التعبير — الصقه في crontab الخاص بك أو تكوين CI/CD أو مجدول السحابة.

الأحرف الخاصة

الحرف المعنى المثال
* كل قيمة * * * * * = كل دقيقة
*/n كل n */15 * * * * = كل 15 دقيقة
, عدة قيم 0 8,12,18 * * * = 8 صباحًا، الظهر، 6 مساءً
- نطاق 0 9-17 * * * = كل ساعة من 9 إلى 5 مساءً

نصائح

الأسئلة الشائعة

ما صيغة تعبير cron؟

يحتوي تعبير cron القياسي على 5 حقول مفصولة بمسافات، تمثّل الدقيقة (0-59) والساعة (0-23) ويوم الشهر (1-31) والشهر (1-12) ويوم الأسبوع (0-6، حيث 0 هو الأحد). تعني العلامة النجمية (*) «كل» قيمة لهذا الحقل.

ماذا تعني */5 في cron؟

تعني صياغة */5 «كل 5». في حقل الدقيقة، تعني */5 كل 5 دقائق (0 و5 و10 و15...). في حقل الساعة، تعني */5 كل 5 ساعات. تعمل في أي حقل.

هل تعبيرات cron متطابقة في جميع المنصات؟

تنسيق الـ 5 حقول قياسي في Linux cron وAWS EventBridge وGitHub Actions ومعظم أنظمة الجدولة. تضيف بعض المنصات حقلًا سادسًا للثواني أو السنة. راجع وثائق منصتك.

كيف أجدول لليوم الأخير من كل شهر؟

لا تحتوي cron القياسية على كلمة مفتاحية «اليوم الأخير». استخدم حلًا بديلًا مثل تشغيل يومي مع فحص تاريخ في برنامجك النصي، أو استخدم امتدادات خاصة بالمنصة (يدعم AWS EventBridge L لـ «last»).