مولد Crontab
أنشئ وتحقق من تعبيرات cron مع شروحات فورية قابلة للقراءة. تصور الجداول، عاين أوقات التنفيذ القادمة، وصدّر إلى تنسيق crontab. مثالي لمسؤولي أنظمة Linux/Unix.
ما هو ملف crontab؟
ملف crontab هو ملف تكوين يستخدمه daemon cron في أنظمة التشغيل الشبيهة بـ Unix لجدولة الأوامر أو البرامج النصية للتشغيل تلقائيًا على فترات زمنية محددة. يمكن لكل مستخدم الحصول على ملف crontab الخاص به.
كم عدد الحقول في تعبير cron؟
تعبير cron القياسي يحتوي على 5 حقول: الدقيقة (0-59)، الساعة (0-23)، يوم الشهر (1-31)، الشهر (1-12)، ويوم الأسبوع (0-7، حيث 0 و 7 هما الأحد). بعض الأنظمة تدعم حقل اختياري سادس للسنة.
ماذا تعني النجمة (*) في cron؟
النجمة (*) هي حرف بديل يعني "كل" أو "جميع القيم الممكنة" لذلك الحقل. على سبيل المثال، * في حقل الدقيقة يعني أن الأمر يعمل كل دقيقة.
كيف أحدد قيمًا متعددة في cron؟
يمكنك تحديد قيم متعددة باستخدام الفواصل (على سبيل المثال، 1,3,5 للاثنين والأربعاء والجمعة)، أو النطاقات باستخدام الشرطات (على سبيل المثال، 1-5 من الاثنين إلى الجمعة)، أو قيم الخطوة باستخدام الشرطات المائلة (على سبيل المثال، */2 لكل وحدتين).
ما الفرق بين يوم الشهر ويوم الأسبوع؟
يوم الشهر (الحقل 3) يحدد التاريخ (1-31)، بينما يوم الأسبوع (الحقل 5) يحدد يوم الأسبوع (0-7). إذا تم تقييد كليهما، يعمل الأمر عندما يتطابق أي منهما.
كيف أشغل مهمة cron كل 5 دقائق؟
استخدم التعبير */5 * * * * الذي يعني "كل 5 دقائق". */5 في حقل الدقيقة ينشئ نمط خطوة يُطلق عند 0، 5، 10، 15، 20، 25، 30، 35، 40، 45، 50، و 55 دقيقة بعد كل ساعة.
هل يمكنني جدولة مهمة للتشغيل في أوقات محددة مثل الساعة 9 صباحًا و 5 مساءً؟
نعم، استخدم قيمًا مفصولة بفواصل: 0 9,17 * * * سيعمل الساعة 9:00 صباحًا و 5:00 مساءً كل يوم. يمكنك أيضًا استخدام نطاقات مثل 0 9-17 * * * للتنفيذ كل ساعة من 9 صباحًا إلى 5 مساءً.
ما هي سلاسل cron الخاصة مثل @daily أو @hourly؟
السلاسل الخاصة هي اختصارات: @yearly أو @annually (مرة واحدة في السنة)، @monthly (مرة واحدة في الشهر)، @weekly (مرة واحدة في الأسبوع)، @daily أو @midnight (مرة واحدة في اليوم)، @hourly (مرة واحدة في الساعة)، و @reboot (عند بدء النظام).
كيف أحرر ملف crontab الخاص بي؟
استخدم الأمر "crontab -e" لتحرير ملف crontab الخاص بك. استخدم "crontab -l" لعرض مهام cron الحالية، و "crontab -r" لإزالة جميع مهام cron الخاصة بك. قم دائمًا بعمل نسخة احتياطية قبل التحرير.
أين يتم تخزين سجلات cron؟
عادةً ما يتم تخزين سجلات cron في /var/log/cron أو /var/log/messages أو /var/log/syslog اعتمادًا على توزيع Linux الخاص بك. يمكنك أيضًا إعادة توجيه إخراج cron إلى ملف سجل مخصص في إدخال crontab الخاص بك.
لماذا لا تعمل مهمة cron الخاصة بي؟
تشمل المشاكل الشائعة: بناء جملة غير صحيح، أذونات ملف خاطئة، الأمر غير موجود في PATH، متغيرات البيئة غير معينة، أو daemon cron لا يعمل. تحقق من السجلات بحثًا عن رسائل الخطأ وتحقق من تعبيرك باستخدام هذه الأداة.
هل يمكنني استخدام متغيرات البيئة في crontab؟
نعم، يمكنك تعريف متغيرات البيئة في الجزء العلوي من ملف crontab الخاص بك (على سبيل المثال، SHELL=/bin/bash، PATH=/usr/bin:/bin). تنطبق هذه المتغيرات على جميع مهام cron في ذلك الملف.
ما هو بناء جملة cron المكون من 6 حقول؟
يضيف بناء الجملة المكون من 6 حقول حقل الثواني في البداية: الثواني الدقيقة الساعة اليوم الشهر يوم الأسبوع. يتم دعم هذا من قبل بعض تطبيقات cron مثل Quartz Scheduler، ولكن ليس من قبل cron Unix القياسي.
كيف أقوم بعمل نسخة احتياطية من crontab الخاص بي؟
قم بتشغيل "crontab -l > mycrontab.backup" لحفظ crontab الخاص بك في ملف. للاستعادة، استخدم "crontab mycrontab.backup". من الجيد عمل نسخة احتياطية قبل إجراء التغييرات.