شرح الحقول واحدًا تلو الآخر
| الحقل | القيمة | المعنى |
|---|---|---|
| الدقيقة | 0 | 0 |
| الساعة | 9 | 9 |
| يوم الشهر | * | كل أيام الشهر |
| الشهر | * | كل شهر |
| يوم الأسبوع | 1-5 | من الإثنين إلى الجمعة |
أمثلة جاهزة للنسخ
Linux crontab
# crontab -e
0 9 * * 1-5 /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: "0 9 * * 1-5"
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: '0 9 * * 1-5' # always UTC
تحسب GitHub Actions الجداول بتوقيت UTC، ولا تقبل الاختصارات مثل @daily، ولا تشغّل سير العمل أكثر من مرة كل 5 دقائق، وقد يتأخر التشغيل في أوقات الضغط العالي.
صيغ بديلة شائعة
اضغط على أي تعبير لتحميله في الأداة أعلاه.
| تعبير الكرون | الجدول الزمني |
|---|---|
| في تمام الساعة 9:00 ص، من الإثنين إلى الجمعة. | |
| في تمام الساعة 9:00 ص، من الأحد إلى الخميس. | |
| كل 30 دقيقة، بين 9:00 ص و5:59 م، من الإثنين إلى الجمعة. | |
| في تمام الساعة 6:00 م، من الإثنين إلى الجمعة. |
الأسئلة الشائعة
ماذا يعني التعبير 0 9 * * 1-5 في الكرون؟
في تمام الساعة 9:00 ص، من الإثنين إلى الجمعة. الحقول الخمسة هي: الدقيقة 0، الساعة 9، يوم الشهر *، الشهر *، يوم الأسبوع 1-5.
كيف أشغّل مهمة كرون كل أيام العمل (من الإثنين إلى الجمعة) في لينكس؟
نفّذ الأمر crontab -e، وأضف السطر 0 9 * * 1-5 /path/to/command، ثم احفظ الملف واخرج. استخدم المسارات الكاملة، ووجّه المخرجات إلى ملف سجل، وتأكّد من التنفيذ بالأمر grep CRON /var/log/syslog.
متى سيعمل التعبير 0 9 * * 1-5 في المرة القادمة؟
يعتمد ذلك على الوقت الحالي وعلى المنطقة الزمنية للجهاز الذي يشغّل cron. تعرض الحاسبة في هذه الصفحة مواعيد التنفيذ الخمسة القادمة بتوقيتك المحلي، أما على الخادم فيستخدم cron المنطقة الزمنية للنظام، وغالبًا ما تكون UTC.