اجرای خودکار دستور در ترمینال در زمان مشخص

گاهی اوقات نیاز داریم که یک دستور را در زمانی مشخص (و نه اکنون) اجرا کنیم. برای مثال از اینترنت حجم استفاده میکنیم و از ساعت 2 تا 8 صبح (که زمان ترافیک رایگانمان است 🙂 ) میخواهیم به دانلود یک فایل بپردازیم. در ادامه ی مقاله به یک روش ساده برای انجام این کار اشاره میکنیم.با استفاده از دستور at میتوانیم دستورات مورد نظر را در یک زمان خاص اجرا کنیم. به این شکل که ابتدا زمان را تعیین میکنیم سپس این برنامه برایمان یک محیط برای وارد کردن دستوراتمان باز میکند. در پایان با زدن Ctrl + D (که میانبر استاندارد لینوکس برای اعلام اتمام استریم ورودی است) پایان دستوراتمان را برای برنامه مشخص میکنیم. حال با رسیدن به زمان تعیین شده, در صورت روشن بودن سیستم! آن دستورات به طور خودکار اجرا میشوند.

حال به عنوان مثال میخواهیم به کمک این ابزار برای دانلود هایمان یک برنامه زمانی تعیین کنیم.

ابتدا با اجرای دستور زیر به نصب این برنامه میپردازیم:

$ sudo apt-get install at

بعد از نصب برنامه, زمان مورد نظرمان را تعیین میکنیم:

$ at 02:00 09/17/16

نکته: اگر تاریخ را بعد از ساعت قید نکنیم, برنامه روز فعلی را به عنوان روز مورد نظر در نظر میگیرد.

حال دستورات مورد نظر را در ورودی های ایجاد شده توسط at وارد میکنیم و در پایان با زدن Ctrl + D از این محیط خارج میشویم, برای مثال:screenshot-from-2016-09-16-22-14-10

حال دانلود ما در ساعت 2 شروع میشود. حتی برای تمام شدن دانلود در ساعت 8 صبح هم میتوان یک زمان بندی دیگر با استفاده از دستور at درست کرد.

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

$ atq

و با استفاده از دستور زیر میتوانید برخی از دستورات زمان بندی شده ی تان را حذف کنید: (که در آن number_of_task شماره ی عمیلیات مورد نظر است که با دستور بالا میتوانید آن را بیابید)

$ atrm number_of_task

امیدوارم این ابزار برایتان مفید باشد!

موفق و پیروز باشید 🙂

اجرای خودکار دستور در ترمینال در زمان مشخص

کامنت ها

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد.

لطفا اگر سوالی خارج از موضوع این مطلب دارید آن را در فروم مطرح کنید.

<