يشغّل cron الأوامر وفق جدول زمني على سيرفرات لينكس، وتستخدم لوحات التحكم نفس الصيغة للمهام المجدولة.
الحقول الخمسة
┌──────── minute (0-59)
│ ┌────── hour (0-23)
│ │ ┌──── day of month (1-31)
│ │ │ ┌── month (1-12)
│ │ │ │ ┌ day of week (0-7, 0 and 7 are Sunday)
│ │ │ │ │
* * * * * command
| الرمز | المعنى | مثال |
|---|
* | كل القيم | * في الساعات = كل ساعة |
, | قائمة | 1,15 = يوم 1 ويوم 15 |
- | نطاق | 1-5 = من الاثنين إلى الجمعة |
/ | خطوة | */10 في الدقائق = كل 10 دقائق |
أمثلة
| الجدول | وقت التشغيل |
|---|
*/5 * * * * | كل 5 دقائق |
0 * * * * | في بداية كل ساعة |
30 2 * * * | كل يوم الساعة 02:30 |
0 9 * * 1-5 | أيام العمل الساعة 09:00 |
0 3 * * 0 | يوم الأحد الساعة 03:00 |
0 0 1 * * | منتصف الليل أول كل شهر |
التعديل والمراجعة
crontab -e # edit your jobs
crontab -l # list your jobs
تجنّب المفاجآت
- يعمل cron ببيئة محدودة: استخدم المسارات الكاملة للبرامج والملفات.
- الوقت هو المنطقة الزمنية للسيرفر، وقد تختلف عن منطقتك.
- وجّه المخرجات إلى ملف سجل لتظهر الأخطاء، مثل
>> /var/log/backup.log 2>&1. - وزّع المهام الثقيلة بدلًا من تشغيلها كلها عند منتصف الليل.