زمانبندی اجرای برنامه ها با CMD

زمانبندی اجرای برنامه ها با CMD (دستور SCHTASKS)

یکی از ابزارهای کاربردی ویندوز برای زمانبندی در اجرای برنامه ها، ابزار Task Scheduler میباشد. با استفاده از ابزار Task Scheduler میتوان برای هر برنامه مشخص کرد در چه ساعتی شروع به کار کند و در چه ساعتی کارش را به اتمام رساند. در CMD هم شما میتوانید برای اجرای برنامه ها زمان مشخصی را معین کنید. یعنی با خط فرمان مشخص کنید برنامه X در تاریخ فلان اجرا و در ساعت فلان متوقف شود. در ادامه تی ام ال منیجر را در زمانبندی اجرای برنامه ها با CMD دنبال کنید. تا نحوه استفاده از دستور SCHTASKS را بیاموزید.

ابتدا CMD را به صورت Run As Administrator اجرا کنید. برای یادگیری از روشهای مختلف در اجرای CMD به پست راههای اجرای CMD مراجعه کنید.

اگر دستور SCHTASKS را بدون پارامتر وارد کنید کلیه Task های ساخته شده نمایش داده میشوند:

SCHTASKS

برای ساختن Task باید از زیر دستور /Create استفاده کنید.

SCHTASKS /Create /?

پارامترهای زیر دستور SCHTASKS /CREATE

ابتدا کلیه پارامتر ها را توضیح میدهم سپس از آنها در یک مثال استفاده میکنم.

از پارامتر /s برای مشخص کردن نام کامپیوتر مقصد استفاده میشود.

از پارامتر /u برای مشخص کردن نام حساب کاربری مقصد استفاده میشود.

از پارامتر /p برای وارد نمودن رمز عبور حساب کاربری مشخص شده در پارامتر /u استفاده میشود.

از پارامتر /sc برای مشخص نمودن نحوه اجرای برنامه در تاریخ استفاده میشود. این پارامتر شامل گزینه های زیر میباشد:

دقیقه ای (Minute) یا ساعتی (Hourly) یا روزانه (Daily) یا هفته ای (Weekly) یا ماهانه (Monthly) یا یکبار (Once) یا با بالا آمدن ویندوز (ONSTART) یا با وارد شدن به حساب کاربری (ONLOGON) یا در زمان استراحت (ONIDLE) یا در زمانی که اتفاق خاصی بیافتد (ONEVENT) .

از پارامتر /mo برای مشخص نمودن زمان اجرا استفاده میشود.

مقدار زماننوع زمان

1 – 1439 Minutes

Minute:

1 – 23 Hours

Hourly:

1 – 365 Days

Daily:

1 – 52 Week

Weekly:

1 – 12 or FIRST, SECOND, THIRD, FOURTH, LAST, LASTDAY

Monthly:

از پارامتر /d برای مشخص کردن روز اجرای Task در هفته استفاده میشود. مقادیر قابل استفاده:

برای هفت رو هفته:

MON, TUE, WED, THU, FRI, SAT, SUN

برای 30 یا 31 روز ماه:

1 – 31

از علامت * هم برای مشخص کردن کلیه ایام استفاده میشود.

از پارامتر /m برای مشخص کردن ماههای سال استفاده میشود. عدد پیشفرض اولین روز ماه است. مقادیر قابل استفاده:

JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV, DEC

از پارامتر /i برای مشخص کردن زمان استراحت استفاده میشود. برای استفاده از این مقدار باید دقیقه بیکاری سیستم را مشخص کنید. این دقیقه میتواند از 1 – 999 باشد.

از پارامتر /tn برای مشخص نمودن نام Task استفاده میشود.

از پارامتر /tr برای مشخص کردن برنامه ای که قرار است اجرا شود استفاده میشود. مثلا برای اجرای ماشین حساب: C:\Windows\System32\Calc.exe

از پارامتر /st برای مشخص نمودن زمان اجرای Task در روز استفاده میشود. زمان شروع 24 ساعته مشخص میشود. مثلا ساعت 21:30

از پارامتر /ri برای مشخص نمودن فاصله زمانی اجرای Task استفاده میشود. ای پارامتر با گزینه های زیر قابل استفاده نیست:

MINUTE, HOURLY, ONSTART, ONLOGON, ONIDLE, ONEVENT

از پارامتر /et برای مشخص نمودن زمان اتمام عملکرد Task استفاده میشود. زمان اتمام 24 ساعته میباشد. مثلا اگر ساعت شروع 21:30 میباشد زمان اتمام 22:30 مشخص میشود.

از پارامتر /du برای مشخص نمودن مدت زمان اجرای Task استفاده میشود. نمیتوان از پارامتر du با پارامتر et همزمان استفاده نمود.

از پارامتر /k برای متوقف نمودن Task در زمان پایان عملکرد Task استفاده میشود. برای استفاده از پارامتر /k باید از پارامتر های /et یا /du استفاده نموده باشید.

از پارامتر /sd برای مشخص نمودن تاریخ شروع Task استفاده میشود. برای مثال 05:31:2020 مقدار پیشفرض /sd تاریخ همان روز است. نمیتوان از پارامتر /sd به همراه گزینه های زیر استفاده نمود:

ONCE, ONSTART, ONLOGON, ONIDLE, ONEVENT

از پارامتر /ed برای مشخص نمودن تاریخ پایان Task استفاده میشود. برای مثال 06:03:2020 نمیتوان از پارامتر /sd به همراه گزینه های زیر استفاده نمود:

ONCE, ONSTART, ONLOGON, ONIDLE, ONEVENT

از پارامتر /ec برای مشخص نمودن نام کانال Event استفاده میشود.

از پارامتر /z برای حذف شدن خودکار Task پس از آخرین اجرا استفاده میشود.

از پارامتر /xml برای ساخت Task از روی فایل XML استفاده میشود.

از پارامتر /f برای ساخت اجباری Task استفاده میشود. نا دیده گرفتن هشدار ها

چند مثال از دستور SCHTASKS /CREATE

مثال اول:

SCHTASKS /Create /SC HOURLY /TN Calculator /TR %Windir%\System32\Calc.exe

در مثال بالا یک Task با نام Calculator ساخته شده که برنامه Calc.exe را به صورت ساعتی اجرا کند.

مثال دوم

SCHTASKS /Create /SC MINUTE /MO 5 /TN TMLMANAGER /TR CMD.exe /ST 12:00 /ET 14:00 /SD 06/06/2018 /ED 06/06/2020

در مثال بالا یک Task با نام TMLMANAGER ساخته شده که برنامه CMD را هر 5 دقیقه از ساعت 12:00 تا ساعت 14:00 اجرا کند.

که این Task از تاریخ 06/06/2018 شروع به فعالیت میکند و در تاریخ 06/06/2020 به پایان میرسد.

مثال سوم

SCHTASKS /Create /S ABC /U user /P password /RU runasuser /RP runaspassword /SC WEEKLY /TN report /TR notepad.exe

در مثال بالا یک Task با نام Report در سیستم ABC ساخته شده که در حساب کاربری Runuser اجرا میشود.

فهرست گیری از Task های ساخته شده

برای نمایش Task های ساخته شده دستور SCHTASKS را بدون پارامتر وارد کنید. برای مثال:

SCHTASKS

یکی دیگر از راههای نمایش Task های ساخته شده استفاده از پارامتر /Query میباشد.

SCHTASKS /QUERY

حذف Task های ساخته شده

برای حذف Task های ساخته شده باید از زیر دستور /Delete استفاده کنید. برای مثال:

SCHTASKS /DELETE /TN NOTEPAD

در صورت داشتن هر گونه سوال یا انتقاد تی ام ال منیجر را از محبت خود محروم نکنید.


برای دریافت نسخه PDF آموزش ساخت وظایف زمانبندی شده با CMD کلیک کنید.


 

به نظر شما ممکنه کسی با استفاده از کلید های زیر این مطلب رو به اشتراک بذاره؟
محمد برغمدی

محمد برغمدی

امام علی علیه السلام: با مردم آنگونه معاشرت كنيد، كه اگر مرديد بر شما اشك ريزند، و اگر زنده مانديد، با اشتياق سوي شما آيند.

4 دیدگاه روی “زمانبندی اجرای برنامه ها با CMD

  • آبان 5, 1395 در 17:35
    Permalink

    سلام واقعا ممنونم فقط یه سوالی داشتم اونم اینکه نمیشه تنظیم کرد که دو task با هم اجرا بشن ؟

    پاسخ
    • محمد برغمدی
      آبان 5, 1395 در 18:07
      Permalink

      سلام مهدی جان
      خواهش میکنم
      یعنی چی دوتا Task با هم اجرا بشن؟
      اگه منظورتون ساخت دو Task که میتونید هزار تا بسازید. اما اگه منظورتون اجرای دو برنامه با یک Task به صورت همزمان که باید از فایل Batch استفاده کنید و هر دو برنامه تون رو در فایل Batch فراخوانی کنید.

      پاسخ
  • خرداد 28, 1396 در 16:56
    Permalink

    سلام، من می خوام یه برنامه رو بعد از تموم شدن برنامه ای که در حال اجراست، باز کنم،
    می دونید چطور باید این کارو انجام بدم؟
    cmd یا autohotkey

    پاسخ
    • محمد برغمدی
      خرداد 29, 1396 در 01:20
      Permalink

      سلام
      میتونید هر دو برنامه رو تو یک فایل Batch به صورت پشت سر هم قرار بدید و فایل Batch رو اجرا کنید. برای مثال:
      @echo off
      Title App Luncher
      Myfirstapp.exe
      Mysecondapp.exe

      پاسخ

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *