次の方法で共有


schtasks を作成します。

タスクをスケジュールします。

構文

schtasks /create /sc <scheduletype> /tn <taskname> /tr <taskrun> [/s <computer> [/u [<domain>\]<user> [/p <password>]]] [/ru {[<domain>\]<user> | system}] [/rp <password>] [/mo <modifier>] [/d <day>[,<day>...] | *] [/m <month>[,<month>...]] [/i <idletime>] [/st <starttime>] [/ri <interval>] [{/et <endtime> | /du <duration>} [/k]] [/sd <startdate>] [/ed <enddate>] [/it] [/np] [/z] [/xml <xmlfile>] [/v1] [/f] [/rl <level>] [/delay <delaytime>] [/hresult]

Parameters

パラメーター 説明
/sc <scheduletype> スケジュールの種類を指定します。 有効な値は次のとおりです。
  • MINUTE - タスクを実行するまでの時間を分単位で指定します。
  • HOURLY - タスクを実行するまでの時間数を指定します。
  • DAILY - タスクを実行するまでの日数を指定します。
  • WEEKLY - タスクを実行するまでの期間を週単位で指定します。
  • MONTHLY - タスクを実行するまでの期間を月単位で指定します。
  • ONCE - 指定した日時にタスクを 1 回実行することを指定します。
  • ONSTART - システムが起動するたびにタスクを実行することを指定します。 開始日を指定したり、次回のシステムが起動されたときにタスクを実行することができます。
  • ONLOGON - ユーザー (すべてのユーザー) がログオンするたびにタスクを実行することを指定します。 日付を指定したり、次に、ユーザーがログオンしたときにタスクを実行することができます。
  • ONIDLE - システムが一定期間アイドル状態になるたびにタスクを実行することを指定します。 日付を指定したり、次回のシステムがアイドル状態のタスクを実行できます。
  • ONEVENT - EventID を含むシステム イベント ログからの情報と一致するイベントに基づいてタスクを実行することを指定します。
/tn <taskname> タスクの名前を指定します。 システム上の各タスクは一意の名前を持ち、ファイル名の規則に従っている必要があります。また、238 文字を超えてはいけません。 スペースが含まれる名前を囲む引用符を使用します。 スケジュールされたタスクを別のフォルダーに格納するには、 /tn <folder name\task name> を実行します。
/tr <Taskrun> プログラムまたはタスクを実行するコマンドを指定します。 実行可能ファイル、スクリプト ファイルまたはバッチ ファイルの完全修飾パスとファイル名を入力します。 パス名は 262 文字を超えない必要があります。 schtasks パスを追加しない場合、ファイルは <systemroot>\System32 ディレクトリにあると見なされます。
/s <computer> (または円記号なし) の名前またはリモート コンピューターの IP アドレスを指定します。 既定値はローカル コンピューターです。
/u [<domain>] 指定したユーザー アカウントのアクセス許可を持つには、このコマンドを実行します。 既定では、ローカル コンピューターの現在のユーザーのアクセス許可です。 /U/p パラメーターが有効に使用する場合のみ /sします。 指定したアカウントのアクセス許可は、タスクをスケジュールして、タスクの実行に使用されます。 別のユーザーのアクセス許可を使用してタスクを実行するには、/ru パラメーターを使用します。 ユーザー アカウントは、リモート コンピューターの Administrators グループのメンバーである必要があります。 また、ローカル コンピューターでは、リモート コンピューターと同じドメインに存在する必要があります。 または、リモート コンピューターのドメインによって信頼されているドメインに存在する必要があります。
/p <password> 指定されたユーザー アカウントのパスワードを指定、 /u パラメーター。 /p パラメーターまたはパスワード引数を指定せずに /u パラメーターを使用すると、schtasks ではパスワードの入力が求められます。 /U/p パラメーターが有効に使用する場合のみ /sします。
/ru {[<domain>]<user> | system} 指定したユーザー アカウントのアクセス許可で、タスクを実行します。 既定では、タスクを実行またはによって指定されたユーザーのアクセス許可を持つ、ローカル コンピューターの現在のユーザーのアクセス許可を持つ、 /u パラメーターを 1 つが含まれる場合。 /Ru パラメーターは、ローカルまたはリモート コンピューター上でタスクをスケジュールする場合に有効です。 有効なオプションは次のとおりです。
  • Domain - 代替のユーザー アカウントを指定します。
  • System - ローカル システム アカウント (オペレーティング システムおよびシステム サービスによって使用される、高い特権を持つアカウント) を指定します。
/rp <password> 既存のユーザー アカウントまたは /ru パラメーターで指定されたユーザー アカウントのパスワードを指定します。 ユーザー アカウントを指定するときにこのパラメーターを使用しない場合、SchTasks.exe では、次回のサインイン時にパスワードの入力を求めるメッセージが表示されます。 システム アカウントの資格情報を使用してタスクを実行する場合 (/ru System)、/rp パラメーターを使用しないでください。 システム アカウントにはパスワードがないため、SchTasks.exe で要求メッセージが表示されません。
/mo <modifiers> タスクのスケジュールの種類を実行する頻度を指定します。 有効なオプションは次のとおりです。
  • MINUTE - タスクが <n> 分ごとに実行されることを指定します。 1 分から 1439 分までの範囲の任意の値を使用できます。 既定値は 1 分です。
  • HOURLY - タスクが <n> 時間ごとに実行されることを指定します。 1 時間から 23 時間までの範囲の任意の値を使用できます。 既定値は 1 時間です。
  • DAILY - タスクが <n> 日ごとに実行されることを指定します。 1 日から 365 日までの範囲の任意の値を使用できます。 既定値は 1 日です。
  • WEEKLY - タスクが <n> 週間ごとに実行されることを指定します。 1 週間から 52 週間までの範囲の任意の値を使用できます。 既定値は 1 週間です。
  • MONTHLY - タスクが <n> か月ごとに実行されることを指定します。 次のいずれかの値を使うことができます。
    • 1 ~ 12 の数値
    • LASTDAY - タスクを月の最終日に実行する場合
    • FIRST、SECOND、THIRD、または FOURTH および /d <day> パラメーター - タスクを実行する特定の週と曜日を指定します。 [月の第 3 水曜日にします。
  • ONCE - タスクが 1 回実行されることを指定します。
  • ONSTART - タスクが起動時に実行されることを指定します。
  • ONLOGON - /ru パラメーターで指定されたユーザーがログオンするときにタスクが実行されるように指定します。
  • ONIDLE - /i パラメーターによって指定された分数の間、システムがアイドル状態になった後でタスクが実行されることを指定します。
/d DAY[,DAY...] タスクのスケジュールの種類を実行する頻度を指定します。 有効なオプションは次のとおりです。
  • WEEKLY - 1 週から 52 週までの値を指定することによって、タスクを週単位で実行するように指定します。 必要に応じて、MON から SUN までの値または [MON - SUN...] の範囲を追加して、特定の曜日を追加することもできます。
  • MONTHLY - FIRST、SECOND、THIRD、FOURTH、LAST の値を指定して、タスクが毎月の週ごとに実行されるように指定します。 必要に応じて、MON から SUN までの値を追加して特定の曜日を追加するか、1 から 12 までの月の数値を指定することもできます。 このオプションを使用する場合は、1 から 31 までの範囲の数値を指定して、月の特定の日付を追加することもできます。

    注: 日付の値 1 から 31 は、/mo パラメーターを指定しない場合、または /mo パラメーターが月単位 (1 から 12) の場合にのみ有効です。 既定では 1 日 1 (月の最初の日です)。

/m MONTH[,MONTH...] 1 か月またはスケジュールされたタスクを実行する年の月を指定します。 有効なオプションには、JAN から DEC と * (毎月) があります。 /M パラメーターは月単位のスケジュールでのみ有効です。 これは LASTDAY 修飾子を使用する場合に必要です。 それ以外の場合は省略可能で、既定値は * (毎月) です。
/i <Idletime> 時間を分単位、コンピューターがアイドル状態、タスクが開始される前に指定します。 有効な値は、1 から 999 の整数です。 このパラメーターは ONIDLE スケジュールでのみ有効で、その場合に必須です。
/st <Starttime> 24 時間形式、HH:mm を使用して、タスクの開始時刻を指定します。 既定値は、ローカル コンピューターの現在の時刻です。 /St パラメーターが有効では、1 分に 1 時間ごと、毎日、毎週、月単位、およびスケジュールします。 これは ONCE スケジュールで必須です。
/ri <interval> スケジュールされたタスクの繰り返し間隔を分単位で指定します。 これは MINUTE、HOURLY、ONSTART、ONLOGON、ONIDLE、ONEVENT のスケジュールの種類には適用されません。 有効な範囲は、1-599940 (599940 分 = 9999 時間) です。 /et または /du パラメーターを指定した場合、既定値は 10 分です。
/et <endtime> 分単位または時間単位のタスクのスケジュールが終了する時刻を 24 時間形式 <HH:MM> で指定します。 指定した終了時刻より後 schtasks を再開しませんタスク開始時刻になるまでです。 既定では、タスクのスケジュールの終了時刻はあるありません。 このパラメーターは、オプションであり、1 分または 1 時間ごとのスケジュールでのみ有効です。
/du <duration> 分単位または時間単位のスケジュールの時間の最大長を 24 時間形式 <HHHH:MM> で指定します。 指定した時間が経過後 schtasks を再開しませんタスク開始時刻になるまでです。 既定では、タスクのスケジュール時間が指定されていない最大です。 このパラメーターは、オプションであり、1 分または 1 時間ごとのスケジュールでのみ有効です。
/k 指定した時刻にタスクを実行するプログラムを停止 /et または /duします。 /k を指定しない場合、schtasks では、/et または /du によって指定された時間に到達した後にプログラムが再び開始されず、プログラムが実行中の場合はプログラムが停止されません。 このパラメーターは、オプションであり、1 分または 1 時間ごとのスケジュールでのみ有効です。
/sd <Startdate> タスクのスケジュールが開始する日付を指定します。 既定値は、ローカル コンピューター上の現在の日付です。 Startdate の形式は、[地域と言語のオプション] のローカル コンピューター用に選択したロケールで異なります。 1 つだけの形式では、ロケールごとに有効です。 有効なデータ形式には、以下のものが含まれます (ローカル コンピューターの [地域と言語のオプション][日付 (短い形式)] に対して選択された形式と最も似たものを選ぶようにします。
  • <MM>// - 英語 (米国) やスペイン語 (パナマ) などの月が最初の形式の使用を指定します。
  • <DD>// - ブルガリア語やオランダ語 (オランダ) などの日付が最初の形式を指定します。
  • <YYYY>// - スウェーデン語やフランス語 (カナダ) などの年が最初の形式を指定します。
/ed <Enddate> スケジュールが終了する日付を指定します。 このパラメーターは省略可能です。 これは ONCE、ONSTART、ONLOGON、ONIDLE、ONEVENT スケジュールでは有効ではありません。 既定では、スケジュールの終了日はあるありません。 既定値は、ローカル コンピューター上の現在の日付です。 Enddate の形式は、[地域と言語のオプション] のローカル コンピューター用に選択したロケールで異なります。 1 つだけの形式では、ロケールごとに有効です。 有効なデータ形式には、以下のものが含まれます (ローカル コンピューターの [地域と言語のオプション][日付 (短い形式)] に対して選択された形式と最も似たものを選ぶようにします。
  • <MM>// - 英語 (米国) やスペイン語 (パナマ) などの月が最初の形式の使用を指定します。
  • <DD>// - ブルガリア語やオランダ語 (オランダ) などの日付が最初の形式を指定します。
  • <YYYY>// - スウェーデン語やフランス語 (カナダ) などの年が最初の形式を指定します。
/ec <channelname> システム イベント ログの条件に一致する ONEVENT スケジュールの種類によってトリガーされるイベント チャネル名を指定します。
/it 実行ユーザー (タスクを実行するときのユーザー アカウント) がコンピューターにログオンしている場合のみ、スケジュールされたタスクを実行するように指定します。 このパラメーターには、システムのアクセス許可で実行するタスクまたは対話型のみプロパティが設定されているタスクへの影響はありません。 変更コマンドを使用して、対話型のみプロパティをタスクから削除することはできません。 既定では、実行ユーザーは、タスクがスケジュールされているときのローカル コンピューターの現在のユーザーか、/u パラメーターで指定されたアカウント (使用されている場合) です。 ただし、コマンドに /ru パラメーターが含まれている場合、実行ユーザーは、/ru パラメーターによって指定されたアカウントです。
/np パスワードは保存されません。 タスクは、指定されたユーザーとして非対話形式で実行されます。 使用できるのはローカル リソースのみです。
/z スケジュールの終了時のタスクを削除するよう指定します。
/xml <xmlfile> XML ファイルで指定されたタスクを作成します。 /ru および /rp パラメーターの組み合わせか、XML ファイルにユーザー アカウント情報が既に含まれている場合は /rp パラメーターを単独の場合があります。
/v1 Vista より前のオペレーティング システムに表示されるタスクを作成します。 これは /XML パラメーターと互換性がありません。
/f タスクを作成し、指定したタスクが既に存在する場合に警告を抑制するように指定します。
/rl <level> ジョブの実行レベルを指定します。 使用できる値は LIMITED (スケジュールされたタスクは、標準ユーザー アカウントなどの最小レベルの特権で実行されます) と HIGHEST (スケジュールされたタスクは、スーパーユーザー アカウントなどの最高レベルの特権で実行されます) です。 既定値は Limited です。
/delay <delaytime> mmmm:ss 形式でトリガーされた後にタスクの実行を遅らせる待機時間を指定します。 これは、ONSTART、ONLOGON、ONEVENT のスケジュールの種類に対してのみ有効です。
/hresult プロセス終了コードを HRESULT 形式で指定します。
/? コマンド プロンプトにヘルプを表示します。

タスクを <n> 分ごとに実行するようスケジュールするには

分単位のスケジュールで、 /sc 分 パラメーターは必須です。 /Mo (修飾子) パラメーターを省略して、タスクのそれぞれの実行間隔を分単位の数を指定します。 /mo の既定値は、1 (1 分ごと) です。 /Et (終了時刻) と /du (期間) パラメーターは省略可能ななしでも使用できる、 /k (タスクの終了) パラメーター。

  • セキュリティ スクリプト Sec.vbs を 20 分ごとに実行するようスケジュールするには、次のように入力します。

    schtasks /create /sc minute /mo 20 /tn "Security Script" /tr \\central\data\scripts\sec.vbs
    

    この例には開始する日付または時刻が含まれていないため、タスクはコマンドが完了した 20 分後に開始し、システムが実行されていれば、その後 20 分ごとに実行されます。 セキュリティ スクリプトのソース ファイルがリモート コンピューターに格納されているが、タスクがスケジュールされており、ローカル コンピューターで実行されことに注意してください。

  • セキュリティ スクリプト Sec.vbs が毎日午後 5 時 00 分から午前 7 時 59 分まで 100 分ごとにローカル コンピューターで実行されるようにスケジュールするには、次のように入力します。

    schtasks /create /tn "Security Script" /tr sec.vbs /sc minute /mo 100 /st 17:00 /et 08:00 /k
    

    この例では、分単位のスケジュールを指定するための /sc パラメーターと、100 分の間隔を指定するための /mo パラメーターを使用します。 使用して、 /st/et 開始時刻と日付ごとのスケジュールの終了時刻を指定するパラメーターです。 また、/k パラメーターを使用して、スクリプトが午前 7 時 59 分にまだ実行中の場合はスクリプトを停止します。/k を指定していない場合、schtasks では午前 7 時 59 分以降にスクリプトが開始されませんが、午前 6 時 20 分に開始したインスタンスがまだ実行中の場合、これは停止されません。

タスクを <n> 時間ごとに実行するようスケジュールするには

時間単位のスケジュールで、 /sc 毎時 パラメーターは必須です。 /Mo (修飾子) パラメーターを省略して、タスクのそれぞれの実行間隔の時間数を指定します。 /mo の既定値は 1 (1 時間ごと) です。 /K (タスクの終了) パラメーターは省略可能といずれかと併用して /et (指定された時間に終了) または /du (指定した間隔後の終了)。

  • MyApp プログラムを 2002 年 3 月の最初の日から 5 時間ごとに実行するようスケジュールするには、次のように入力します。

    schtasks /create /sc hourly /mo 5 /sd 03/01/2002 /tn MyApp /tr c:\apps\myapp.exe
    

    この例では、ローカル コンピューターでは [地域と言語のオプション][英語 (ジンバブエ)] オプションが設定されているため、開始日の形式は、MM/DD/YYYY (03/01/2002) です。

  • MyApp プログラムを、深夜 0 時を 5 分過ぎてから 1 時間ごとに実行するようスケジュールするには、次のように入力します。

    schtasks /create /sc hourly /st 00:05 /tn MyApp /tr c:\apps\myapp.exe
    
  • MyApp プログラムを 3 時間ごとに実行し、合計 10 時間実行するようにスケジュールするには、次のように実行します。

    schtasks /create /tn MyApp /tr MyApp.exe /sc hourly /mo 3 /st 00:00 /du 0010:00
    

    この例では、タスクは午前 12 時 00 分、午前 3 時 00 分、午前 6 時 00 分、および午前 9 時 00 分に実行されます。期間は 10 時間であるため、タスクは午後 12 時 00 分に再実行されません。代わりに、翌日の午前 12 時 00 分に再開します。 また、プログラムは数分しか実行されないため、期間が過ぎたときにプログラムがまだ実行されている場合にプログラムを停止する /k パラメーターは必要ありません。

タスクを <n> 日ごとに実行するようスケジュールするには

毎日のスケジュールで、 /sc 毎日 パラメーターは必須です。 /Mo (修飾子) パラメーターを省略して、タスクのそれぞれの実行の間の日数を指定します。 /mo の既定値は 1 (毎日) です。

  • MyApp プログラムを 2021 年 12 月 31 日まで 1 日 1 回毎日午前 8 時 00 分に実行するようスケジュールするには、次のように入力します。

    schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc daily /st 08:00 /ed 31/12/2021
    

    この例では、ローカル コンピューターのシステムが、 [地域と言語のオプション][英語 (英国)] オプションに設定されているため、終了日の形式は、DD/MM/YYYY (31/12/2021) です。 さらに、この例では /mo パラメーターが含まれていないため、既定の間隔 1 が使用されてコマンドは毎日実行されます。

  • MyApp プログラムを 2021 年 12 月 31 日から 12 日ごとに午後 1 時 00 分 (13:00) に実行するようスケジュールするには、次のように入力します。

    schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc daily /mo 12 /sd 12/31/2002 /st 13:00
    

    この例では、システムが [地域と言語のオプション][英語 (ジンバブエ)] オプションに設定されているため、終了日の形式は、MM/DD/YYYY (12/31/2021) です。

  • セキュリティ スクリプト Sec.vbs を 70 日ごとに実行するようスケジュールするには、次のように入力します。

    schtasks /create /tn "Security Script" /tr sec.vbs /sc daily /mo 70 /it
    

    この例の /it パラメーターは、タスクの実行アカウントを持つユーザーがコンピューターにログオンしている場合にのみタスクを実行するよう指定するために使用します。 タスクは特定のユーザー アカウントのアクセス許可を使用して実行されるため、このタスクは、そのユーザーがログオンしている場合にのみ実行されます。

    Note

    対話式操作専用 (/it) プロパティを持つタスクを識別するには、詳細クエリ (/query /v) を使用します。 /it を使用したタスクの詳細クエリ表示では、 Logon Mode フィールドには Interactive (対話型) のみの値が表示されます。

タスクを <n> 週間ごとに実行するようスケジュールするには

毎週のスケジュールで、 /sc 毎週 パラメーターは必須です。 /Mo (修飾子) パラメーターを省略して、タスクのそれぞれの実行までの週の数を指定します。 /mo の既定値は 1 (毎週) です。

週単位のスケジュールには、タスクを特定の曜日または毎日 () 実行するようスケジュールするオプションの /d パラメーターもあります。 既定値は、MON (月曜日) です。 毎日 () オプションは、毎日のタスクをスケジュール設定に相当します。

  • MyApp プログラムを 6 週間ごとにリモート コンピューターで実行するようスケジュールするには、次のように入力します。

    schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc weekly /mo 6 /s Server16 /u Admin01
    

    この例では /d パラメーターを省略しているため、タスクは月曜日に実行されます。 この例では、リモート コンピューターを指定する /s パラメーターと、ユーザーの管理者アカウントのアクセス許可でコマンドを実行する /u パラメーターも使用します。 さらに、/p パラメーターが省略されているため、SchTasks.exe によってユーザーは管理者アカウントのパスワードを入力することを要求されます。また、コマンドはリモートで実行されるため、コマンド内のすべてのパス (MyApp.exe へのパスを含む) はリモート コンピューター上のパスを参照します。

  • タスクを隔週の金曜日に実行するようスケジュールするには、次のように入力します。

    schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc weekly /mo 2 /d FRI
    

    この例では、2 週間の間隔を指定する /mo パラメーターと、週の曜日を指定する /d パラメーターを使用します。 毎週金曜日に実行するようにタスクをスケジュールするには /mo パラメーターを省略するか、これを 1 に設定します。

タスクを <n> か月ごとに実行するようスケジュールするには

このスケジュールの種類で、 /sc 毎月 パラメーターは必須です。 /mo (修飾子) パラメーターは、タスクが実行される間隔の月数を指定し、省略可能で、既定値は 1 (毎月) です。 このスケジュールの種類も省略可能な /d 月の指定した日に実行するタスクをスケジュールするパラメーターです。 既定値は 1 (月の最初の日) です。

  • MyApp プログラムを毎月 1 日に実行するようスケジュールするには、次のように入力します。

    schtasks /create /tn MyApp /tr myapp.exe /sc monthly
    

    /mo (修飾子) パラメーターと /d (日) パラメーターの両方の既定値は 1 であるため、この例ではこれらのパラメーターをどちらも使用する必要はありません。

  • MyApp プログラムを 3 か月ごとに実行するようスケジュールするには、次のように入力します。

    schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc monthly /mo 3
    

    このコマンドでは /mo パラメーターを使用して、3 か月の間隔を指定します。

  • MyApp プログラムを 2002 年 7 月 2 日から 2003 年 6 月 30 日までの 1 年間、1 か月おきに 21 日の深夜 0 時に実行するようスケジュールするには、次のように入力します。

    schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc monthly /mo 2 /d 21 /st 00:00 /sd 2002/07/01 /ed 2003/06/30
    

    この例では、/mo パラメーターを使用して月の間隔 (2 か月ごと) を指定し、/d パラメーターを使用して日付を指定し、/st パラメーターを使用して時刻を指定し、/sd パラメーターと /ed パラメーターを使用して開始日と終了日をそれぞれ指定します。 この例では、ローカル コンピューターが、 [地域と言語のオプション][英語 (南アフリカ)] オプションに設定されているため、日付は現地形式 YYYY/MM/DD で指定されまです。

週の特定の曜日に実行するようタスクをスケジュールするには

曜日のスケジュールは、週単位のスケジュールの一種です。 毎週のスケジュールで、 /sc 毎週 パラメーターは必須です。 /Mo (修飾子) パラメーターを省略して、タスクのそれぞれの実行までの週の数を指定します。 /mo の既定値は 1 (毎週) です。 /D は省略可能で、パラメーターが指定した曜日、またはすべての日に実行するタスクをスケジュール (*)。 既定値は、MON (月曜日) です。 毎日のオプション ((/d *)) は、毎日のタスクをスケジュール設定することに相当します。

  • MyApp プログラムを毎週水曜日に実行するようスケジュールするには、次のように入力します。

    schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc weekly /d WED
    

    この例では /d パラメーターを使用して、曜日を指定します。 コマンドでは /mo パラメーターを省略しているため、タスクは毎週実行されます。

  • タスクを 8 週ごとに月曜日と金曜日に実行するようスケジュールするには、次のように入力します。

    schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc weekly /mo 8 /d MON,FRI
    

    この例では、曜日を指定する /d パラメーターと、8 週間の間隔を指定する /mo パラメーターを使用します。

月の特定の週に実行するタスクをスケジュールするには

このスケジュールの種類で、 /sc 毎月 、パラメーター、 /mo (修飾子) パラメーターと /d (日) のパラメーターが必要です。 /Mo (修飾子) パラメーターは、タスクを実行する曜日を指定します。 /D パラメーターは週の曜日を指定します。 このスケジュールの種類では、週の 1 日だけを指定することができます。 このスケジュールはまた、省略可能なが /m することができます (月) パラメーターは、特定の月または毎月のタスクをスケジュール (*)。 /m パラメーターの既定値は、毎月 (*) です。

  • MyApp プログラムを毎月第 2 日曜日に実行するようスケジュールするには、次のように入力します。

    schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc monthly /mo SECOND /d SUN
    

    この例では、月の第 2 週を指定する /mo パラメーターと、曜日を指定する /d パラメーターを使用します。

  • MyApp プログラムを 3 月と 9 月の最初の月曜日に実行するようスケジュールするには、次のように入力します。

    schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc monthly /mo FIRST /d MON /m MAR,SEP
    

    この例では、月の第 1 週を指定する /mo パラメーターと、曜日を指定する /d パラメーターを使用します。 ここでは /m パラメーターを使用して月を指定し、コンマを使用して月引数を区切っています。

各月の特定の日に実行するようタスクをスケジュールするには

このスケジュールの種類では、/sc monthly パラメーターと /d (日) パラメーターが必要です。 /d パラメーターは、曜日ではなく月の日付 (1 から 31) を指定し、スケジュールで指定できる日付は 1 日のみです。 /m (月) パラメーターは省略可能で、既定値は毎月 () ですが、/mo (修飾子) パラメーターは、このスケジュールの種類では有効ではありません。

schtasks.exe では、/m パラメーターで指定された月に存在しない日にタスクをスケジュールすることはできません。 たとえば、2 月 31 日をスケジュールしようとしたとします。 ただし、/m パラメーターを使用せず、毎月には存在しない日付にタスクをスケジュールした場合、タスクは短い月に実行されません。 月の最後の日のタスクをスケジュールするには、最後の日のスケジュールの種類を使用します。

  • MyApp プログラムを毎月 1 日に実行するようスケジュールするには、次のように入力します。

    schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc monthly
    

    既定の修飾子は "なし" (修飾子なし) であるため、このコマンドでは既定の日である 1 と、既定の月である "毎月" が使用され、追加のパラメーターは不要です。

  • MyApp プログラムを 5 月 15 日と 6 月 15 日の午後 3 時 00 分 (15:00) に実行するようスケジュールするには、次のように入力します。

    schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc monthly /d 15 /m MAY,JUN /st 15:00
    

    この例では、日付を指定する /d パラメーターと、月を指定する /m パラメーターを使用します。 使用して、 /st 開始時刻を指定するパラメーターです。

1 か月の最終日に実行するタスクをスケジュールするには

最後の日のスケジュールの種類で、 /sc 毎月 パラメーター、 /mo 月末を指定する (修飾子) パラメーターと /m (月) のパラメーターが必要です。 /d (日) パラメーターは無効です。

  • MyApp プログラムを毎月最終日に実行するようスケジュールするには、次のように入力します。

    schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc monthly /mo lastday /m *
    

    この例では、最後の日を指定する /mo パラメーターと、プログラムが毎月実行するように指定する /m パラメーターとワイルドカード文字 (*) を使用します。

  • MyApp プログラムを 2 月の最終日と 3 月の最終日の午後 6 時 00 分に実行するようスケジュールするには、次のように入力します。

    schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc monthly /mo lastday /m FEB,MAR /st 18:00
    

    この例では、最後の日を指定する /mo パラメーター、月を指定する /m パラメーター、および開始時刻を指定する /st パラメーターを使用します。

1 回実行するようスケジュールするには

一度だけ実行スケジュールの種類で、 /sc 回 パラメーターは必須です。 /St タスクを実行する時間を指定するパラメーターが必要です。 タスクを実行する日付を指定する /sd パラメーターは省略可能ですが、 /mo (修飾子) および /ed (終了日) のパラメーターは無効です。

ローカル コンピューターの時刻に基づいて、指定した日付と時刻が過去のものである場合、schtasks ではタスクを 1 回実行するようにスケジュールを設定できません。 別のタイム ゾーンにあるリモート コンピューターに 1 回実行するタスクをスケジュールする必要がありますスケジュールを設定する日付より前にし、時間が、ローカル コンピューターで発生します。

  • MyApp プログラムを 2003 年 1 月 1 日の深夜 0 時に実行するようスケジュールするには、次のように入力します。

    schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc once /sd 01/01/2003 /st 00:00
    

    この例では、スケジュールの種類を指定する /sc パラメーターと、日付と時刻を指定する /sd および st パラメーターを使用します。 この例では、ローカル コンピューターでは [地域と言語のオプション][英語 (米国)] オプションが設定されているため、開始日の形式は、MM/DD/YYYY です。

システムを開始するたびに実行するタスクをスケジュールするには

開始のスケジュールの種類で、 /sc onstart パラメーターは必須です。 /Sd (開始日) パラメーターは省略可能で、既定値は、現在の日付です。

  • システムが起動するごとに MyApp プログラムを実行するようスケジュールするには、次のように入力します。

    schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc onstart
    

    この例では、ローカル コンピューターでは [地域と言語のオプション][英語 (米国)] オプションが設定されているため、開始日の形式は、MM/DD/YYYY です。

ユーザーがログオンしたときに実行されるようタスクをスケジュールするには

ログオン時のスケジュールの種類は、いずれかのユーザーがコンピューターにログオンするたびに実行されるタスクをスケジュールします。 ログオン時のスケジュールの種類では、/sc onlogon パラメーターが必須です。 /Sd (開始日) パラメーターは省略可能で、既定値は、現在の日付です。

  • ユーザーがリモート コンピューターにログオンするときに実行されるタスクをスケジュールするには、次のように入力します。

    schtasks /create /tn "Start Web Site" /tr c:\myiis\webstart.bat /sc onlogon /s Server23
    

    この例では、ユーザー (すべてのユーザー) がリモート コンピューターにログオンするたびにバッチ ファイルを実行するようスケジュールします。 使用して、 /s パラメーターをリモート コンピューターを指定します。 コマンドは、リモートであるため、コマンドをバッチ ファイルへのパスなどのすべてのパスをリモート コンピューター上のパスを参照してください。

システムがアイドル状態のときに実行されるタスクをスケジュールするには

アイドル時のスケジュールの種類では、/i パラメーターによって指定された期間中にユーザー アクティビティがないときに実行されるタスクをスケジュールします。 アイドル時のスケジュールの種類では、/sc onidle パラメーターおよび /i パラメーターが必要です。 /Sd (開始日) は省略可能で、既定値は、現在の日付です。

  • コンピューターがアイドル状態になるたびに MyApp プログラムを実行するようスケジュールを設定するには、次のように入力します。

    schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc onidle /i 10
    

    この例では、タスクが開始される前にコンピューターが 10 分間アイドルである必要があることを指定するために、必須の /i パラメーターを指定します。

今すぐ実行するようタスクをスケジュールするには

schtasks には「今すぐ実行」オプションはありませんが、数分後に開始して 1 回実行するタスクを作成することで、そのオプションをシミュレートすることができます。

  • タスクを 2020 年 11 月 13 日午後 2 時 18 分 (現地時刻) に 1 回実行するようスケジュールするには、次のように入力します。

    schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc once /st 14:18 /sd 11/13/2002
    

    この例では、ローカル コンピューターでは [地域と言語のオプション][英語 (米国)] オプションが設定されているため、開始日の形式は、MM/DD/YYYY です。

別のアクセス許可で実行するタスクのスケジュールを設定する

ローカルとリモート コンピューターの両方で、別のアカウントの権限で実行するあらゆる種類のタスクをスケジュールすることができます。 特定のスケジュールの種類に必要なパラメーターだけでなく、 /ru パラメーターは必須、 /rp パラメーターは省略可能です。

  • MyApp プログラムをローカル コンピューターで実行するには、次のように入力します。

    schtasks /create /tn MyApp /tr myapp.exe /sc weekly /d TUE /ru Admin06
    

    この例では /ru パラメーターを使用して、ユーザーの管理者アカウント (Admin06) のアクセス許可でタスクを実行することを指定します。 またこの例では、タスクは毎週火曜日に実行するようにスケジュールされていますが、代替のアクセス許可で実行するタスクに、あらゆるスケジュールの種類を使用することができます。

    これに対して、SchTasks.exe では、Admin06 アカウントの実行パスワードの入力を求め、成功メッセージが表示されます。

    Please enter the run as password for Admin06: ********
    SUCCESS: The scheduled task MyApp has successfully been created.
    
  • MyApp プログラムを Marketing コンピューターで 4 日おきに実行するには、次のように入力します。

    schtasks /create /tn MyApp /tr myapp.exe /sc daily /mo 4 /s Marketing /u Marketing\Admin01 /ru Reskits\User01
    

    この例では、毎日のスケジュールを指定する /sc パラメーターと、4 日間の間隔を指定する /mo パラメーターを使用します。 さらに、この例ではリモート コンピューターの名前を指定する /s パラメーターと、そのリモート コンピューター上でタスクをスケジュールするアクセス許可を持つアカウントを指定する /u パラメーターを使用します (Marketing コンピューター上の Admin01)。 最後に、この例では /ru パラメーターを使用して、ユーザーの管理者以外のアカウント (Reskits ドメインの User01) のアクセス許可でタスクを実行することを指定します。 なし、 /ru パラメーターで指定されたアカウントのアクセス許可でタスクが実行は /uします。

    この例を実行すると、schtasks では最初に (コマンドを実行するために) /u パラメーターによって指定されたユーザーのパスワードを要求し、次に (タスクを実行するために) /ru パラメーターによって指定されたユーザーのパスワードを要求します。 パスワードを認証した後、schtasks では、タスクがスケジュールされたことを示すメッセージが表示されます。

    Type the password for Marketing\Admin01:********
    Please enter the run as password for Reskits\User01: ********
    SUCCESS: The scheduled task MyApp has successfully been created.
    
  • AdminCheck.exe プログラムが毎週金曜日の午前 4 時 00 分に Public コンピューターで実行するようにするには (ただし、コンピューターの管理者がログオンした場合に限る)、次のように入力します。

    schtasks /create /tn "Check Admin" /tr AdminCheck.exe /sc weekly /d FRI /st 04:00 /s Public /u Domain3\Admin06 /ru Public\Admin01 /it
    

    この例では、毎週のスケジュールを指定する /sc パラメーター、曜日を指定する /d パラメーター、開始時刻を指定する /st パラメーターを使用します。 また、リモート コンピューターの名前を指定する /s パラメーター、リモート コンピューター上のタスクをスケジュールするアクセス許可を持つアカウントを指定する /u パラメーター、Public コンピューターの管理者 (Public\Admin01) のアクセス許可を使用して実行するようタスクを構成する /ru パラメーター、Public\Admin01 アカウントがログオンしている場合のみタスクを実行するよう指定する /it パラメーターを使用します。

    Note

    対話式操作専用 (/it) プロパティを持つタスクを識別するには、詳細クエリ (/query /v) を使用します。 タスクの詳細なクエリ画面上で /it, 、 ログオン モード フィールドの値を持つ 対話型のみします。

システムのアクセス許可で実行するタスクのスケジュールを設定する

あらゆる種類のタスクは、ローカルとリモート コンピューターの両方で、システム アカウントのアクセス許可で実行できます。 特定のスケジュールの種類に必要なパラメーターに加えて、/ru system (または /ru) パラメーターが必須ですが、/rp パラメーターは無効です。

重要

システム アカウントには、対話型ログオン権限はありません。 ユーザーは、システムのアクセス許可で実行されているプログラムやタスクを表示したり、それを操作したりすることはできません。 /Ru パラメーターは、タスクが実行するタスクをスケジュールするためのアクセス許可しないアクセス許可を決定します。 管理者の値に関係なく、タスクをスケジュールしてのみ、 /ru パラメーター。

システムのアクセス許可で実行するタスクを識別するには、詳細クエリ (/query /v) を使用します。 システムの実行タスクの詳細なクエリ画面では、 ユーザーとして実行 フィールドの値を持つ NT authority \systemログオン モード フィールドの値を持つ だけバック グラウンドします。

  • MyApp プログラムを、システム アカウントのアクセス許可を持つローカル コンピューター上で実行するようスケジュールするには、次のように入力します。

    schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc monthly /d 15 /ru System
    

    この例では、毎月の第 15 日に実行するタスクがスケジュールされているが、システムのアクセス許可で実行するタスクにどの種類のスケジュールを使用することができます。 さらに、この例では /ru System パラメーターを使用して、システム セキュリティ コンテキストを指定します。 システム タスクではパスワードが使用されないため、/rp パラメーターは省略されます。

    応答として、SchTasks.exe ではパスワードを求めることなく、情報メッセージと成功メッセージが表示されます。

    INFO: The task will be created under user name (NT AUTHORITY\SYSTEM).
    SUCCESS: The Scheduled task MyApp has successfully been created.
    
  • MyApp プログラムを毎朝午前 4 時 00 分に Finance01 コンピューター上でシステムのアクセス許可を使用して実行するようスケジュールするには、次のように入力します。

    schtasks /create /tn MyApp /tr myapp.exe /sc daily /st 04:00 /s Finance01 /u Admin01 /ru System
    

    この例では、/tn パラメーターを使用してタスクに名前を付け、/tr パラメーターを使用して MyApp プログラムのリモート コピーを指定し、/sc パラメーターを使用して毎日のスケジュールを指定しますが、/mo パラメーターは既定値が 1 (毎日) なので省略します。 この例ではさらに、/st パラメーターを使用して開始時刻 (タスクが毎日実行される時刻でもあります) を指定し、/s パラメーターを使用してリモート コンピューターの名前を指定し、/u パラメーターを使用して、リモート コンピューターでタスクをスケジュールするアクセス許可を持つアカウントを指定し、/ru パラメーターを使用して、タスクをシステム アカウントで実行する必要があるという指定を行います。 /ru パラメーターを指定しない場合、タスクは /u パラメーターで指定されたアカウントのアクセス許可を使用して実行されます。

    Schtasks.exe では、/u パラメーターによって指定されたユーザーのパスワードが要求され、パスワードが認証されると、タスクが作成されたこと、および System アカウントのアクセス許可でそれが実行されることを示すメッセージが表示されます。

    Type the password for Admin01:**********
    
    INFO: The Schedule Task MyApp will be created under user name (NT AUTHORITY\
    SYSTEM).
    SUCCESS: The scheduled task MyApp has successfully been created.
    

複数のプログラムを実行するタスクをスケジュールするのには

各タスクは、1 つだけのプログラムを実行します。 ただし、複数のプログラムを実行するバッチ ファイルを作成して、バッチ ファイルを実行するタスクをスケジュールすることができます。

  1. メモ帳などのテキスト エディターを使用して、イベント ビューアー (Eventvwr.exe) プログラムとシステム モニター (Perfmon.exe) プログラムを開始するために必要な .exe ファイルの名前と完全修飾パスを含むバッチ ファイルを作成します。

    C:\Windows\System32\Eventvwr.exe
    C:\Windows\System32\Perfmon.exe
    
  2. ファイルを MyApps.bat として保存し、schtasks.exe を開き、次のように入力して MyApps.bat を実行するタスクを作成します。

    schtasks /create /tn Monitor /tr C:\MyApps.bat /sc onlogon /ru Reskit\Administrator
    

    このコマンドでは、すべてのユーザーがログオンするたびに実行されるモニターのタスクを作成します。 タスクの名前を指定する /tn パラメーター、MyApps.bat を実行する /tr パラメーター、OnLogon のスケジュールの種類を指定する /sc パラメーター、ユーザーの管理者アカウントのアクセス許可でタスクを実行する /ru パラメーターを使用します。

    このコマンドの結果としてユーザーが、コンピューターにログオンするたびにすると、タスクはイベント ビューアーとシステム モニターを起動します。

リモート コンピューター上で実行されるタスクをスケジュールするには

リモート コンピューター上で実行するタスクをスケジュールするには、リモート コンピューターのスケジュールをタスクを追加する必要があります。 リモート コンピューターには、あらゆる種類のタスクをスケジュールすることができますが、次の条件を満たす必要があります。

  • タスクをスケジュールするアクセス許可が必要です。 そのため、リモート コンピューターの Administrators グループのメンバーであるアカウントを使用してローカル コンピューターにログオンする必要がありますか、使用する必要があります、 /u パラメーターをリモート コンピューターの管理者の資格情報を提供します。

  • 使用することができます、 /u パラメーターは、ローカルおよびリモート コンピューターが同じドメインまたはローカル コンピューターがリモート コンピューターのドメインが信頼しているドメインにしている場合にのみです。 それ以外の場合、リモート コンピューターは、指定したユーザー アカウントを認証できないし、アカウントが Administrators グループのメンバーであることを確認できません。

  • タスクをリモート コンピューターで実行するための十分なアクセス許可が必要です。 必要なアクセス許可は、タスクによって異なります。 既定では、タスクの実行、ローカル コンピューターの現在のユーザーのアクセス許可を持つ場合は、 /u パラメーターを使用すると、タスクの実行で指定されたアカウントのアクセス許可を持つ、 /u パラメーター。 ただし、使用することができます、 /ru またはシステム権限を持つ別のユーザー アカウントのアクセス許可を持つタスクを実行するパラメーターです。

  • MyApp プログラムを SRV01 リモート コンピューター上で 10 日ごとに (管理者として) 実行するスケジュールを今すぐ開始するには、次のように入力します。

    schtasks /create /s SRV01 /tn MyApp /tr c:\program files\corpapps\myapp.exe /sc daily /mo 10
    

    この例では、リモート コンピューターの名前を指定する /s パラメーターを使用します。 ローカルの現在のユーザーはリモート コンピューターの管理者であるため、タスクをスケジュールするための代替のアクセス許可を指定する /u パラメーターは必要ありません。

    Note

    リモート コンピューターでタスクをスケジュールする場合、すべてのパラメーターはリモート コンピューターを参照します。 したがって、/tr パラメーターで指定されたファイルは、リモート コンピューター上の MyApp.exe のコピーを参照します。

  • MyApp プログラムを SRV06 リモート コンピューター上で 3 時間ごとに (管理者として) 実行するようスケジュールするには、次のように入力します。

    schtasks /create /s SRV06 /tn MyApp /tr c:\program files\corpapps\myapp.exe /sc hourly /mo 3 /u reskits\admin01 /p R43253@4$ /ru SRV06\user03 /rp MyFav!!Pswd
    

    タスクをスケジュールするには管理者のアクセス許可が必要なため、 コマンドでは /u および /p のパラメーターを使用して、ユーザーの管理者アカウント (Reskits ドメイン内の Admin01) の資格情報を提供します。 既定では、これらのアクセス許可は、タスクの実行にも使用します。 ただし、タスクに実行する管理者のアクセス許可が必要がないので、このコマンドは、 /u/rp パラメーターを既定値をオーバーライドし、ユーザーの管理者以外のアカウントのアクセス許可を持つリモート コンピューターでタスクを実行します。

  • MyApp プログラムを SRV02 リモート コンピューター上で毎月の最終日に (ユーザーとして) 実行するようスケジュールするには

    schtasks /create /s SRV02 /tn MyApp /tr c:\program files\corpapps\myapp.exe /sc monthly /mo LASTDAY /m * /u reskits\admin01
    

    ローカルの現在のユーザー (user03) はリモート コンピューターの管理者ではないため、 コマンドでは /u パラメーターを使用して、ユーザーの管理者アカウント (Reskits ドメインの Admin01) の資格情報を指定します。 タスクをスケジュールして、タスクを実行する管理者アカウントのアクセス許可が使用されます。

    コマンドが含まれていないため、 /p (パスワード) パラメーター schtasks パスワードを入力するように求められます。 その後、成功メッセージが表示され、この場合は警告が表示されます。

    Type the password for reskits\admin01:********
    
    SUCCESS: The scheduled task MyApp has successfully been created.
    WARNING: The scheduled task MyApp has been created, but may not run because the account information could not be set.
    

    この警告は、リモート ドメインがで指定されたアカウントを認証できなかったことを示して、 /u パラメーター。 この場合、ローカル コンピューターは、リモート コンピューターのドメインが信頼するドメインのメンバーでないため、リモート ドメインによってユーザー アカウントを認証できませんでした。 この場合、タスク ジョブはスケジュールされたタスクの一覧に表示されますが、タスクは実際には空であり、実行されません。

    詳細なクエリから次の表示では、タスクの問題を公開します。 画面のことに注意しての値 次回の実行時刻しない の値 ユーザーとして実行タスク スケジューラのデータベースから取得できませんでしたします。

    このコンピューターは、同じドメインまたは信頼されたドメインのメンバーをされていた、タスクがスケジュールされましたし、実行した場合に指定します。

    HostName: SRV44
    TaskName: MyApp
    Next Run Time: Never
    Status:
    Logon mode: Interactive/Background
    Last Run Time: Never
    Last Result: 0
    Creator: user03
    Schedule: At 3:52 PM on day 31 of every month, start
    starting 12/14/2001
    Task To Run: c:\program files\corpapps\myapp.exe
    Start In: myapp.exe
    Comment: N/A
    Scheduled Task State: Disabled
    Scheduled Type: Monthly
    Start Time: 3:52:00 PM
    Start Date: 12/14/2001
    End Date: N/A
    Days: 31
    Months: JAN,FEB,MAR,APR,MAY,JUN,JUL,AUG,SEP,OCT,NO
    V,DEC
    Run As User: Could not be retrieved from the task sched
    uler database
    Delete Task If Not Rescheduled: Enabled
    Stop Task If Runs X Hours and X Mins: 72:0
    Repeat: Every: Disabled
    Repeat: Until: Time: Disabled
    Repeat: Until: Duration: Disabled
    Repeat: Stop If Still Running: Disabled
    Idle Time: Disabled
    Power Management: Disabled
    

解説

  • 別のユーザーのアクセス許可を使用して /create コマンドを実行するには、/u パラメーターを使用します。 /U パラメーターは、リモート コンピューター上のタスクのスケジューリングにのみ有効です。

  • schtasks /create の例をさらに表示するには、コマンド プロンプトで schtasks /create /? と入力します。

  • 別のユーザーのアクセス許可で実行するタスクをスケジュールするには、使用、 /ru パラメーター。 /Ru パラメーターはローカルおよびリモート コンピューター上のタスクに対して有効です。

  • /u パラメーターを使用するには、ローカル コンピューターがリモート コンピューターと同じドメイン内にあるか、リモート コンピューター ドメインが信頼するドメイン内にある必要があります。 それ以外の場合、タスクは作成されないか、タスク ジョブが空になるため、タスクが実行されません。

  • Schtasks 指定しない限り、現在のユーザー アカウントを使用してローカル コンピューター上でタスクをスケジュールする際にも、パスワードが常に要求します。 これは、通常の動作の schtasksします。

  • Schtasks では、プログラム ファイルの場所やユーザー アカウントのパスワードは検証されません。 正しいファイルの場所やユーザー アカウントの正しいパスワードを入力しない場合、タスクは作成されますが、実行されません。 また、アカウントのパスワードが変更または期限切れで、タスクに保存されているパスワードを変更しない場合、タスクは実行されません。

  • システム アカウントには、対話型ログオン権限はありません。 ユーザーは、システムのアクセス許可で実行されているプログラムを表示したり、それを操作したりすることはできません。

  • 各タスクは、1 つだけのプログラムを実行します。 ただし、複数のタスクを開始するバッチ ファイルを作成して、その後、バッチ ファイルを実行するタスクをスケジュールします。

  • 作成するとすぐにタスクをテストすることができます。 使用して、 実行 タスクをテストし、その SchedLgU.txt ファイルをチェックインする操作 (SystemRoot\SchedLgU.txt) のエラーです。