تشغيل برنامج shell نصي في أوقات معينة
لجدولة تشغيل برنامج shell نصي في أوقات معينة، استخدم launchd
أو cron
.
جدولة المهام باستخدام launchd
استخدم
launchd
بدلاً من
لجدولة المهام. معcron
launchd
، إذا تم تخطي مهمة بسبب إيقاف تشغيل الكمبيوتر أو وجوده في وضع الإسبات، فسيتم إضافة المهمة إلى قائمة الانتظار عندما يتم تشغيل الكمبيوتر مرة أخرى.لاستخدام
launchd
في الجدولة للمهام المحددة بموقت، استخدم المفتاحStartCalendarInterval
أوStartInterval
.لمزيد من المعلومات حول استخدام
launchd
، انظر صفحة الدليل الخاصة بها.
استخدام cron لجدولة مهمة
يقوم برنامج cron
الخفي بتنفيذ الأوامر المجدولة المحددة في ملفات crontab. يبحث برنامج cron
الخفي في مجلد /usr/lib/cron/tabs/ عن ملفات crontab المسماة باسم الحسابات في /etc/passwd، ثم يقوم بتحميل الملفات في الذاكرة. كما يقوم برنامج cron
الخفي بالبحث في مجلد /etc/crontab/ عن ملفات crontab، التي لها تنسيق مختلف. ثم يقوم cron
بالتكرار كل دقيقة، فحص ملفات crontab المخزنة والتحقق من كل أمر لمعرفة إذا حان وقت تشغيلها في هذه الدقيقة.
عند تنفيذ الأوامر، يتم إرسال الإخراج إلى مالك ملف crontab أو المستخدم المحدد في متغير بيئة MAILTO الاختياري في ملف crontab.
يمكنك استخدام الأداة crontab
لتثبيت، إلغاء تثبيت، أو سرد الجداول المستخدمة لتشغيل برنامج cron
الخفي. بإمكان المستخدمين الحصول على ملف crontab الخاص بهم.
لتكوين ملف crontab الخاص بك، استخدم الأمر
crontab -e
. يقوم ذلك بفتح ملف crontab فارغ في وضع التحرير.فيما يلي مثال على ملف crontab:
SHELL=/bin/sh
PATH=/bin:/sbin:/usr/bin:/usr/sbin
HOME=/var/log
#min hour mday month wday command
30 18 * * 1-5 diskutil repairPermissions /Volumes/MacHD
50 23 * * 0 diskutil repairVolume /Volumes/MacHD
في هذا المثال، يقوم الإدخال الأول بإصلاح أذونات القرص في وحدة تخزين MacHD في الساعة ١٨:٣٠ كل يوم، من الإثنين إلى الجمعة:
30 18 * * 1-5 diskutil repairPermissions /Volumes/MacHD
ويقوم الإدخال الثاني بجدولة عملية إصلاح لوحدة التخزين ليتم تشغيلها في الساعة ٢٣:٥٠ كل أحد:
50 23 * * 0 diskutil repairVolume /Volumes/MacHD