شرح الحقول واحدًا تلو الآخر
| الحقل | القيمة | المعنى |
|---|---|---|
| الدقيقة | */45 | 0 و45 |
| الساعة | * | كل ساعة |
| يوم الشهر | * | كل أيام الشهر |
| الشهر | * | كل شهر |
| يوم الأسبوع | * | كل أيام الأسبوع |
أمثلة جاهزة للنسخ
Linux crontab
# crontab -e
# */45 only matches :00 and :45 — these three lines give a true 45-minute cycle
0,45 */3 * * * /usr/local/bin/my-job.sh >> /var/log/my-job.log 2>&1
30 1-22/3 * * * /usr/local/bin/my-job.sh >> /var/log/my-job.log 2>&1
15 2-23/3 * * * /usr/local/bin/my-job.sh >> /var/log/my-job.log 2>&1
Kubernetes CronJob
apiVersion: batch/v1
kind: CronJob
metadata:
name: my-job
spec:
schedule: "*/45 * * * *"
concurrencyPolicy: Forbid
jobTemplate:
spec:
template:
spec:
restartPolicy: OnFailure
containers:
- name: my-job
image: busybox:1.36
command: ["sh", "-c", "date; echo Hello from cron"]
GitHub Actions
on:
schedule:
- cron: '*/45 * * * *' # always UTC
تحسب GitHub Actions الجداول بتوقيت UTC، ولا تقبل الاختصارات مثل @daily، ولا تشغّل سير العمل أكثر من مرة كل 5 دقائق، وقد يتأخر التشغيل في أوقات الضغط العالي.
صيغ بديلة شائعة
اضغط على أي تعبير لتحميله في الأداة أعلاه.
| تعبير الكرون | الجدول الزمني |
|---|---|
| عند الدقائق 0 و45 من كل ساعة، كل 3 ساعات. | |
| عند الدقيقة 30 من كل ساعة، كل 3 ساعات، بين 1:00 ص و10:59 م. | |
| عند الدقيقة 15 من كل ساعة، كل 3 ساعات، بين 2:00 ص و11:59 م. | |
| عند الدقيقة 45 من كل ساعة. |
الأسئلة الشائعة
ماذا يعني التعبير */45 * * * * في الكرون؟
عند الدقائق 0 و45 من كل ساعة. الحقول الخمسة هي: الدقيقة */45، الساعة *، يوم الشهر *، الشهر *، يوم الأسبوع *.
كيف أشغّل مهمة كرون كل 45 دقيقة في لينكس؟
نفّذ الأمر crontab -e، وأضف الأسطر الواردة في مثال كرون تاب في هذه الصفحة، ثم احفظ الملف واخرج. استخدم المسارات الكاملة، ووجّه المخرجات إلى ملف سجل، وتأكّد من التنفيذ بالأمر grep CRON /var/log/syslog.
متى سيعمل التعبير */45 * * * * في المرة القادمة؟
يعتمد ذلك على الوقت الحالي وعلى المنطقة الزمنية للجهاز الذي يشغّل cron. تعرض الحاسبة في هذه الصفحة مواعيد التنفيذ الخمسة القادمة بتوقيتك المحلي، أما على الخادم فيستخدم cron المنطقة الزمنية للنظام، وغالبًا ما تكون UTC.
كيف أشغّل مهمة كرون كل 45 دقيقة بالضبط؟
استخدم ثلاثة أسطر في كرون تاب تتكرر معًا كل ثلاث ساعات: 0,45 */3 * * * /path/to/job و30 1-22/3 * * * /path/to/job و15 2-23/3 * * * /path/to/job. تعطيك هذه الأسطر 32 تشغيلًا يوميًا بفواصل متساوية. أو استخدم مؤقت systemd مع OnUnitActiveSec=45min، الذي يحسب الفاصل من آخر تشغيل لا من عقارب الساعة.