0 0 * * * افتح في محلّل تعبيرات Cron شرح كل حقل
| الحقل | القيمة | يطابق |
|---|---|---|
| الدقيقة | 0 | 0 |
| الساعة | 0 | 0 |
| يوم الشهر | * | كل القيم |
| الشهر | * | كل القيم |
| يوم الأسبوع | * | كل القيم |
أوقات التشغيل القادمة
مثال: أول 6 مرات تشغيل بعد 1 يناير 2026 (UTC).
- الجمعة، 2 يناير 2026، 00:00
- السبت، 3 يناير 2026، 00:00
- الأحد، 4 يناير 2026، 00:00
- الاثنين، 5 يناير 2026، 00:00
- الثلاثاء، 6 يناير 2026، 00:00
- الأربعاء، 7 يناير 2026، 00:00
نسخ جاهزة للاستخدام
0 0 * * * /path/to/command أضف السطر باستخدام crontab -e. يعمل وفق المنطقة الزمنية للخادم ما لم يُضبط CRON_TZ أو TZ.
apiVersion: batch/v1
kind: CronJob
metadata:
name: every-day-at-midnight
spec:
schedule: "0 0 * * *"
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 غالبًا.
on:
schedule:
- cron: '0 0 * * *'
workflow_dispatch: يستخدم GitHub Actions توقيت UTC دائمًا، ويقبل فواصل لا تقل عن 5 دقائق، وقد يتأخر بدء التشغيل المجدول عند الضغط.
0 0 0 * * ? يضع Quartz الثواني أولًا ويتطلب ? في يوم الشهر أو يوم الأسبوع. تُرقَّم الأيام من 1 إلى 7 بدءًا من الأحد، لذا فالأسماء أكثر أمانًا.
@Scheduled(cron = "0 0 0 * * *") يستخدم Spring @Scheduled(cron = …) ستة حقول: الثواني ثم الحقول الخمسة المعتادة.
الأسئلة الشائعة
› هل منتصف الليل وقت مناسب للمهام اليومية؟
إنه أكثر الأوقات ازدحامًا. إن كانت المهمة تحتاج إلى العمل مرة يوميًا فقط فاختر وقتًا أهدأ، وتذكّر أن تغيير التوقيت الصيفي في المناطق المحلية قد يتخطى ساعات الفجر أو يكررها.
› بأي منطقة زمنية يعمل 0 0 * * *؟
يستخدم cron المنطقة الزمنية للجهاز أو الخدمة التي تشغّله. في لينكس هي منطقة النظام ما لم يُضبط CRON_TZ أو TZ؛ وتقبل CronJob في Kubernetes الحقل spec.timeZone؛ ويستخدم GitHub Actions توقيت UTC دائمًا.
› كيف أتحقق من هذا الجدول قبل النشر؟
افتح 0 0 * * * في محلّل تعبيرات Cron على هذا الموقع. يشرح كل حقل ويعرض أوقات التشغيل القادمة بتوقيتك المحلي أو بتوقيت UTC، داخل المتصفح مباشرة.