Cron Job چیست و چه کاربردی دارد؟

گاهی اوقات نیاز است کارخاصی در زمان خاصی و به صورت دوره‌ای انجام شود، مثلا گرفتن بکاپ از پایگاه داده، ارسال ایمیل و خبرنامه و کارهایی نظیر این. برای انجام این کار در ویندوز از Schedule Task استفاده می شود. در سیستم عامل‌ های متن باز نظیر لینوکس و یونیکس برای این منظور ابزاری بنام Cron وجود دارد که در ادامه به بررسی آن می پردازیم.

Cron یک سرویس زمانبندی است که وظیفه اجرای روتین‌های خاصی را در زمان مشخص بر عهده دارد. Cron این امکان را ایجاد می کند که کارهای روتین و روزمره را به صورت اتوماتیک به انجام برسانیم. کارهایی که باید با زمانبندی انجام شوند در فایلی با نام CronTab ذخیره می شوند. CronTab یک فایل متنی است که در هر سطر آن یک دستور با فرمتی که برای Cron قابل فهم است قرار می گیرد. به هر کدام از دستورات این فایل اصطلاحا Cron Job گفته می شود.

معمولا یک فایل CronTab در سطح سیستم وجود دارد که در آدرس /etc/ قرار دارد که برای برای کارهای مدیریتی و نگهداری سیستم مورد استفاده قرار می گیرد و البته فقط مدیر سیستم یا کاربر با مجوز root می تواند آن را ویرایش کند. به علاوه هر کدام از کاربران سیستم می توانند فایل CronTab مختص به خودشان داشته باشند.

هر دستور در فایل CronTab شامل ۶ بخش است که ۵ بخش ابتدایی برای تعریف تاریخ و زمان انجام دستور مورد نظر و بخش آخر برای تعریف دستوری که باید اجرا شود در نظر گرفته شده است.

فرمت کلی دستورات در فایل CronTab  به شکل زیر است:

cron explanation

بخش اول تا پنجم به ترتیب جهت تعریف دقیقه، ساعت، روز، ماه و روز هفته می باشد. و بخش ششم برای تعریف دستور موردنظر جهت اجرا استفاده می شود که معمولا یک دستور shell است. در ادامه برای روشن شدن مطلب به مثالی توجه نمایید:

30    3      *     *     *         rm /home/someuser/tmp/*

دستور بالا باعث می شود هر روز ساعت 3:30 صبح محتویات فولدر tmp در آدرس مذکور پاک شود.

برای ایجاد و یا تغییر فایل CronTab کاربری خودتان از دستور زیر استفاده کنید:

crontab -e

بعد از وارد کردن این دستور اگر قبلا فایل CronTab خود را تعریف کرده باشید، فایل قبلی به نمایش در می آید و در غیر این صورت یک فایل جدید ساخته شده و شما می توانید دستورات را در آن وارد نمایید.

سیستم برای ویرایش فایل CronTab ویرایشگر پبش فرض که معمولا vi است را فراخوانی می کند، ولی شما می توانید با وارد کردن دستور زیر در خط فرمان ویرایشگر پیش فرض را تغییر دهید.

export EDITOR=your-desired-editor;

برای اطلاعات بیشتر و نیز مشاهده مثال های کامل تر منابع آورده شده در انتهای مطلب را بررسی نمایید.

منبع

لینک دائمی به این مطلب:

شما میتوانید نظر خود را در مورد این مطلب بیان کنید.

ایمیل شما منتشر نخواهد شد.
حروف بزرگ و کوچک یکسان است.