linux

زمانبندی یک کار در لینوکس بوسیله Crontab

ستاره غیر فعالستاره غیر فعالستاره غیر فعالستاره غیر فعالستاره غیر فعال
 

اگر می خواهید الستیکس کار حرفه ای باشید باید برخی قابلیت های سیستم عامل لینوکس را نیز بلد باشید، یکی از آن ویژگی های جالب و بسیار پر کاربرد لینوکس Crontab می باشد.
Crontab به شما این امکان را می دهد تا یک کار شامل اجرای یک یا چندین دستور را زمانبندی کرده تا در موقع خاصی اجرا شود، مثلا شما می خواهید در یک زمان خاص سیستم شما به روز رسانی شود، پشتیبان گرفته شود و یا برنامه خاصی اجرا گردد، این موارد را با Crontab می توانید انجام دهید.

 

برخی موارد استفاده Crontab بر روی سیستم تلفنی الستیکس یا استریسک خود:

  • حذف یا انتقال لاگ های سیستم تلفنی از روی هارد سرور به طور منظم و در بازه های مشخص
  • حذف یا انتقال فایل های صوتی مکالمات ضبط شده و یا صندوق صوتی سیستم تلفنی از روی هارد سرور به طور منظم و در بازه های مشخص
  • stop و start کردن سرویس های نصب شده همانند استریسک در یک زمان مشخص و به صورت  منظم
  • اجرای یک برنامه نوشته شده شما بر روی سیستم تلفنی در یک زمان مشخص 


برای ساخت آن دستور زیر را اجرا نمایید:


crontab -e


پس از زدن دستور یک ویرایشگر فایل باز می شود و شما می توانید دستور خود را در قالب زیر در آن بنویسید:


* * * * * /bin/execute/this/script.sh


همانطور که می بینید قبل از مسیر فایل اجرایی ما 5 ستاره وجود دارد، این ستاره ها به این معنا می باشند:
• دقیقه (0 الی 59)
• ساعت (0 الی 23)
• روز از ماه (1 الی 31)
• ماه (1 الی 12)
• روز از هفته (0 الی 6) که 0 نشاندهنده یکشنبه می باشد.


مثال یک:
برای اجرا کردن اسکریپت خود در هر روز جمعه ساعت 1 صبح مورد زیر باید نوشته شود.
0 1 * * 5 /bin/execute/this/script.sh

مثال دو:
برای اجرای اسکریپت در روزهای دوشنبه تا جمعه ساعت 1 صبح مورد زیر باید نوشته شود.
0 1 * * 1-5 /bin/execute/this/script.sh

مثال سه:
برای اجرای اسکریپت در 10 دقیقه بعد از هر ساعت در اولین روز ماه (میلادی) مورد زیر باید نوشته شود.
10 * 1 * * /bin/execute/this/script.sh

مثال چهار:
برای اجرای اسکریپت در هر 10 دقیقه مورد زیر باید نوشته شود.
0,10,20,30,40,50 * * * * /bin/execute/this/script.sh
همچنین به این شکل نیز می توانید بنویسید:
*/10 * * * * /bin/execute/this/script.sh

مثال پنج:
ریبوت کردن سیستم هر روز ساعت 3 صبح
0 3 * * * /sbin/reboot

مثال ششم:
استفاده از کلمه کلیدی @reboot برای اجرای دستورات شما در هر بار بالا آمدن سیستم.

 

کلمات کلیدی: | |

تمام حقوق سایت برای سلام دیجی و نويسندگان آن محفوظ می باشد