مح محلل تعبيرات كرون

يقوم محلل تعبيرات كرون الخاص بنا بترجمة جداول كرون إلى لغة واضحة ويحسب أوقات التنفيذ القادمة. الصق أي تعبير كرون وشاهد فوراً ما يعنيه، ومتى سيعمل في المرة القادمة، وما إذا كانت البنية صالحة. يدعم تنسيق كرون القياسي المكون من 5 حقول (الدقيقة، الساعة، اليوم، الشهر، يوم الأسبوع)، والتنسيق الممتد المكون من 6 حقول مع الثواني، والإعدادات المسبقة الشائعة مثل @daily و@hourly و@weekly. تتم جميع العمليات في متصفحك ضمن أدوات حساب ساعات العمل.

star 4.9
auto_awesome AI
New

محلل كرون calculator

Presets:
*/5 * * * *
MIN HOUR DOM MON DOW
0-59 0-23 1-31 1-12 0-6
translate
Human Readable
Every 5 minutes

Field Breakdown

Next 10 Execution Times

lightbulb Tips

  • •*/5 = every 5, using the step operator
  • •0 = Sunday, 1 = Monday ... 6 = Saturday
  • •@daily, @hourly, @weekly are handy shortcuts
  • •Always test cron before deploying

How to Use the محلل كرون

edit

أدخل التعبير

اكتب أو الصق تعبير كرون (5 أو 6 حقول). استخدم الإعدادات المسبقة للجداول الشائعة لتسهيل حساب ساعات العمل.

translate

اقرأ الوصف

شاهد الترجمة المفهمومة لما يفعله تعبير كرون الخاص بك كجزء من برنامج حساب الوقت.

schedule

تحقق من التشغيلات التالية

عرض مواعيد التنفيذ العشرة التالية للتأكد من صحة جدولك الزمني.

build

إنشاء تعبير

استخدم أداة الإنشاء التفاعلية لإنشاء تعبير cron جديد من الصفر.

The Formula

تعبير cron هو تعريف جدول زمني يستخدم 5 حقول تفصل بينها مسافات: الدقيقة (0-59)، الساعة (0-23)، يوم الشهر (1-31)، الشهر (1-12)، ويوم الأسبوع (0-6، حيث 0 = الأحد). يمكن أن يستخدم كل حقل رموزاً بديلة (*)، نطاقات (1-5)، قوائم (1،3،5)، وقيم خطوات (*/5). تدعم بعض الأنظمة حقلًا سادساً (الثواني) في البداية.

┌───────────── minute (0-59) │ ┌───────────── hour (0-23) │ │ ┌───────────── day of month (1-31) │ │ │ ┌───────────── month (1-12) │ │ │ │ ┌───────────── day of week (0-6, Sun=0) * * * * *

lightbulb Variables Explained

  • * أي قيمة (رمز بديل)
  • , فاصل قائمة القيم (مثل: 1،3،5)
  • - نطاق القيم (مثل: 1-5)
  • / قيم الخطوات (مثل: */5 = كل 5)

tips_and_updates Pro Tips

1

*/5 * * * * تعني كل 5 دقائق - علامة / هي معامل الخطوة في حساب الساعات

2

0 0 * * 0 تعمل في منتصف الليل كل يوم أحد (اليوم 0 = الأحد في معظم الأنظمة) لتنظيم حساب عدد الساعات

3

استخدم @daily و@hourly و@weekly و@monthly كاختصارات للجداول الشائعة لتسهيل حساب الوقت بالدقائق

4

يوم الأسبوع: 0=الأحد، 1=الإثنين، 2=الثلاثاء، 3=الأربعاء، 4=الخميس، 5=الجمعة، 6=السبت كجزء من حساب الوقت

5

لا يمكن تحديد يوم الشهر ويوم الأسبوع معاً في نفس الوقت في كرون القياسي أثناء حساب ساعات العمل

6

أسماء الشهور (JAN-DEC) وأسماء الأيام (SUN-SAT) تعمل في العديد من عمليات تنفيذ كرون ضمن حاسبة الوقت

7

قم دائماً بتختبار تعبيرات كرون قبل النشر - أخطاء الإزاحة بواحد شائعة عند حساب الوقت

أداة تحليل تعبيرات cron المجانية الخاصة بنا تترجم جداول cron إلى نص مقروء للبشر وتعرِض مواعيد التنفيذ القادمة. تحقق من صحة صيغة cron، وافهم كل حقل، وتأكد من جداولك الزمنية قبل النشر. تدعم تنسيقات cron القياسية بـ 5 حقول والممتدة بـ 6 حقول.

محلل تعبيرات Cron - ترجمة Cron إلى العربية

الصق أي تعبير cron وشاهد فوراً ما يعنيه بلغة عربية واضحة. يحلل محللنا كل حقل (الدقيقة، الساعة، اليوم، الشهر، يوم الأسبوع) ويشرح الجدول الزمني.

تدعم:

  • الرموز البديلة (*)
  • النطاقات (1-5)
  • القوائم (1،3،5)
  • الخطوات (*/5)
  • القيم المسماة (MON-FRI، JAN-DEC)

حاسبة جدول Cron - مواعيد التنفيذ القادمة

شاهد بدقة متى ستتم تنفيذ مهمة cron التالية. تعرض حاسبتنا مواعيد التنفيذ العشرة التالية مع التواريخ والطوابع الزمنية، حتى تتمكن من التحقق من صحة جدولك قبل النشر للإنتاج.

لا تنشر جدول cron خاطئ مرة أخرى.

كيف يعمل تعبير Cron؟

يعمل تعبير cron بمطابقة الوقت الحالي مع نمط مكون من خمسة حقول تفصل بينها مسافات:

  • الدقيقة
  • الساعة
  • يوم الشهر
  • الشهر
  • يوم الأسبوع

يستيقظ برنامج cron الخفي (crond) كل دقيقة ويشغل أي مهمة تتطابق جميع حقولها مع الساعة الحالية، كما هو موضح في مواصفات POSIX crontab وصفحة دليل Linux crontab(5). يقبل كل حقل رمزاً بديلًا (*) لـ "أي قيمة"، بالإضافة إلى النطاقات والقوائم ومعاملات الخطوات.

Vixie cron، التنفيذ المنتشر على نطاق واسع في معظم توزيعات لينكس، يتبع هذا السلوك. فهم أن cron يقيّم دقيقة بدقيقة يوضح سبب عدم قدرة cron أصلياً على جدولة المهام على فترات أقل من دقيقة بدون حقل الثواني.

ماذا تعني حقول Cron الخمسة؟

حقول cron الخمسة، المقروءة من اليسار إلى اليمين، هي:

  • الدقيقة (0-59)
  • الساعة (0-23)
  • يوم الشهر (1-31)
  • الشهر (1-12)
  • يوم الأسبوع (0-6، حيث 0 هو الأحد)

يتم تحديد هذا الترتيب بواسطة معيار POSIX (IEEE Std 1003.1) وموثق في صفحة دليل crontab(5) المحفوظة على man7.org. تقبل حقول الشهر وأيام الأسبوع أيضاً الاختصارات المكونة من ثلاثة أحرف مثل JAN إلى DEC و SUN إلى SAT في معظم التطبيقات.

قاعدة POSIX الرئيسية: عندما يتم تقييد كل من يوم الشهر ويوم الأسبوع (ليس أي منهما *)، يقوم cron بتشغيل المهمة إذا تطابق أي من الحقلين، وليس كلاهما. هذا السلوك من نوع (أو) يفاجئ العديد من المطورين ويسبب عمليات تنفيذ إضافية غير متوقعة.

كيفية استخدام معاملات الخطوة والنطاق والقائمة في Cron

تتيح لك معاملات الخطوة والنطاق والقائمة في Cron التعبير عن جداول زمنية معقدة بشكل موجز.

  • النطاق مثل 1-5 يعني القيم المتتالية (من الإثنين إلى الجمعة في حقل أيام الأسبوع).
  • القائمة مثل 1،3،5 تطابق تلك القيم المحددة فقط.
  • الخطوة مثل */15 في حقل الدقيقة تعني "كل 15 دقيقة" (0، 15، 30، 45)، ويمكن أن تتجمع الخطوات مع النطاقات، كما في 0-30/10.

هذه المعاملات موثقة في دليل crontab(5) ومصدر Vixie cron. على سبيل المثال، */5 9-17 * * 1-5 يتم تنفيذه كل خمس دقائق بين الساعة 9 صباحاً و 5 مساءً في أيام العمل.

الجمع بين المعاملات يحافظ على قراءة أسطر crontab بوضوح مع تغطية فترات متكررة معقدة.

ما هي سلاسل Cron الخاصة مثل @daily و @reboot؟

سلاسل cron الخاصة هي اختصارات مسماة تحل محل صيغة الحقول الخمسة للجداول الزمنية الشائعة.

  • @yearly (أو @annually) تعادل 0 0 1 1 *
  • @monthly تعادل 0 0 1 * *
  • @weekly تعادل 0 0 * * 0
  • @daily (أو @midnight) تعادل 0 0 * * *
  • @hourly تعادل 0 * * * *

تنبع هذه الأسماء المستعارفة من Vixie cron وهي موثقة في صفحة دليل crontab(5) على man7.org. حالة خاصة، @reboot، تشغل المهمة مرة واحدة عند بدء تشغيل النظام بدلاً من جدول زمني للساعة.

لاحظ ألا تدعم كل تطبيقات cron هذه السلاسل؛ لا يتطلبها cron الخاص بـ POSIX، لذا تحقق من الدعم قبل الاعتماد عليها في النصوص البرمجية القابلة للنقل.

هل يدعم Cron الثواني والجداول الزمنية الأقل من دقيقة؟

لا يدعم cron القياسي في يونكس الثواني؛ أدنى دقة لديه هي دقيقة واحدة لأن crond يقيّم الجدول الزمني مرة واحدة في الدقيقة، وفقاً لمواصفات crontab(5).

لجدولة المهام بدقة على مستوى الثانية، يستخدم المطورون لهجات cron الممتدة التي تضيف حقلًا سادساً في البداية. يضع كل من Quartz Scheduler وصيغة @Scheduled الخاصة بـ Spring الثواني أولاً، مما يعطي ثانية دقيقة ساعة يوم-الشهر شهر يوم-الأسبوع. يستخدم AWS EventBridge (المعروف سابقاً باسم CloudWatch Events) cron مكوناً من ستة حقول مع حقل سنة بدلاً من ذلك.

لأن هذه التنسيقات تختلف، فإن تعبير ستة حقول مكتوب لـ Quartz لن يعمل بشكل صحيح في crontab العادي. تأكد دائماً من المحرك الذي يحلل تعبيرك، نظراً لان الاختلاف في عدد الحقول والإزاحات يتباين بين الأنظمة.

كيف تؤثر المناطق الزمنية على مهام cron؟

تؤثر المناطق الزمنية على مهام cron نظراً لأن معظم برامج cron الأساسية تقيم الجداول الزمنية بناءً على الوقت المحلي للنظام وليس التوقيت العالمي المنسق UTC. عندما ينتقل الخادم إلى التوقيت الصيفي، قد تُفوت المهام المجدولة خلال الساعة الملغاة أو المتكررة أو قد تعمل مرتين؛ ويوضح كل من دليل crontab(5) وتوثيق قاعدة بيانات المناطق الزمنية IANA هذه الحالات الاستثنائية.

لتجنب أي لبس، تقوم العديد من فرق العمل بتعيين الخادم أو متغير CRON_TZ في ملف crontab إلى التوقيت العالمي المنسق UTC، اتباعاً لإرشادات مشابهة لتلك الواردة في معيار ISO 8601 لضبط الوقت بدقة ودون غموض. تتيح لك أدوات جدولة السحابة مثل Google Cloud Scheduler وAWS EventBridge تحديد المنطقة الزمنية بوضوح.

عندما يكون التوقيت الدقيق مهمًا، احرص دائمًا على توثيق ما إذا كان التعبير يعتمد على التوقيت العالمي المنسق UTC أو التوقيت المحلي باستخدام حساب الوقت وحاسبة الوقت.

كيفية اختبار والتحقق من تعبير cron بأمان

لاختبار تعبير cron بأمان، تحقق من صحة صياغته واستعرض أوقات التشغيل القادمة قبل إضافته إلى ملف crontab الحي. يقوم هذا المحلل اللغوي بفحص نطاق الحقول والمعاملات، ثم يعرض أوقات التنفيذ التالية لكي تتأكد من أن التكرار يتطابق مع ما تنويه، تماماً كما تفعل عند حساب ساعات العمل أو حساب عدد الساعات.

على الخادم، قم بتشغيل الأمر crontab -l لمراجعة المهام الحالية وcrontab -e لتعديلها، كما هو موضح في صفحات دليل crontab(1) وcrontab(5). قم بتوجيه مخرجات المهمة إلى ملف سجل (على سبيل المثال، عبر إضافة >> /var/log/myjob.log 2>&1) لكي تظهر الأخطاء بوضوح أثناء حساب الساعات.

التجربة المسبقة تمنع أخطاء الإزاحة المكلفة، مثل الخلط بين الدقيقة والساعة، والتي لا تظهر إلا عند تشغيل الجدول في بيئة الإنتاج.

الأخطاء الشائعة عند كتابة تعبيرات cron

الخطأ الأكثر شيوعاً في cron هو سوء فهم ترتيب الحقول وتبديل الدقيقة بالساعة، بحيث يصبح التعبير 0 9 * * * (الموافق لـ 9 صباحاً) هكذا 9 0 * * * (الموافق لـ 00:09).

  • من الأخطاء المتكررة أيضاً توقع دمج يوم الشهر ويوم الأسبوع بمنطق AND، بينما يستخدم cron بمعيار POSIX منطق OR عند تعيين كلاهما، وفقاً لمواصفات crontab(5).
  • يفترض المطورون أيضاً أن الرقم 7 يعني الأحد؛ بينما يستخدم cron القياسي الأرقام من 0 إلى 6، رغم أن Vixie cron يقبل الرقم 7 كأحد أيام الأحد لتسهيل الأمور.
  • استخدام */5 في حقل الساعة ليعني "كل 5 ساعات" يعمل بنجاح، ولكن نسيان إضافة 0 في بداية حقل الدقيقة يجعل المهمة تعمل في كل دقيقة من تلك الساعات عند حساب عدد الساعات والدقائق.
  • وأخيراً، يتم التعامل مع علامات النسبة المئوية (%) غير المحمية في الأوامر كفواصل أسطر بواسطة cron أثناء حساب الوقت بالدقائق.

أين تُستخدم تعبيرات cron في DevOps و CI/CD؟

تُستخدم تعبيرات cron في مختلف مجالات DevOps و CI/CD لتشغيل الأتمتة المتكررة دون تدخل يدوي، تماماً كما تستخدم برنامج حساب الوقت لتنظيم المهام. تقوم سير عمل GitHub Actions بجدولة المهام باستخدام تنسيق cron القياسي المكون من خمسة حقول في مفتاح on.schedule.cron، وتستخدم جداول خطوط أنابيب GitLab CI نفس الصياغة.

تعمل مهام Kubernetes CronJobs، المعرفة في واجهة برمجة التطبيقات batch/v1، على تشغيل المهام الحاوية وفق جدول زمن cron، كما هو موضح في وثائق Kubernetes الرسمية. وتوفر المنصات السحابية بما في ذلك AWS EventBridge وGoogle Cloud Scheduler وAzure Logic Apps إمكانية الجدولة بأسلوب cron للمهام بدون سرير (serverless)، ومفيدة جداً عند احسب ساعات العمل.

تشمل الاستخدامات الشائعة ما يلي:

  • النسخ الاحتياطي الليلي لقواعد البيانات
  • تسخين ذاكرة التخزين المؤقت
  • إنشاء التقارير
  • تجديد الشهادات
  • تدوير السجلات باستخدام أدوات حساب الوقت

ونظراً لأن كل منصة قد تستخدم لهجة مختلفة قليلاً، احرص دائماً على التحقق من صحة تعبيرك مقابل محلل النظام المستهدف.

Frequently Asked Questions

sell

Tags