【入門】タスクスケジューラーをschtasksコマンドで設定する

こんにちは!今回は、スクリプトの定期実行やリマインドしたいメッセージの表示などで便利な、schtasksコマンドを使用してタスクを作成する方法についてまとめました。

schtasksとは

schtasksコマンドは、コマンドプロンプトもしくはPowerShellを使用して、タスクスケジューラーのタスクをコマンド設定する時に使います。

本記事ではコマンドプロンプトを使って設定していきます。コマンドプロンプトを起動し、以下のようにコマンドを入力します。

下記に、コードのテキストを用意しました。

schtasks /create /tn "SimpleTask3" /tr "msg * 'おつかれ~~~~!'" /sc daily /st 20:10

上記コマンドでは、次のようなタスクが作成されます。

  • タスク名
    • SimpleTask3
  • 実行されるタスクの内容
    • 毎日20時10分になったら「おつかれ~~~~!」というメッセージを表示

作成されたタスクは、タスクスケジューラーでも確認できます。

タスクスケジューラーにタスクが作成されています。

このように、メッセージを表示するタスクを作成したり、スクリプトを自動で実行するタスクを作成したりすることができます。

利用可能なパラメーター

schtasks コマンドでは、タスクスケジューラーにタスクを作成するだけでなく、「毎週何曜日に実行する」など、細かいパラメーターを設定することもできます。

以下に、主な構文とパラメーターを表形式でまとめました。

必須のパラメーター

まずは、必須のパラメーターです。下記のいずれかを指定し、タスクを作成するのか、削除するのか、などを指定します。

パラメーター 説明
/change タスクのプロパティのうち、「実行するプログラム」「実行するユーザーアカウント」「パスワード」を変更でき、対話型のプロパティをタスクに追加する。
/create 新しいタスクをスケジュールする。
/delete スケジュールされたタスクを削除する。
/end タスクによって起動されたプログラムを停止する。
/query コンピュータ上で実行されるスケジュールされたタスクを表示する。
/run スケジュールされたタスクをすぐに実行する。

オプションのパラメーター

こちらは、タスク名やスケジュールなどを指定する際に利用するパラメーターです。必要に応じて組み合わせて利用します。

パラメーター 説明
/tn タスク名を記入する。タスク名にスペースを空けたい場合は""で囲む。
/ru タスクの実行ユーザーを指定する。
/rp 実行ユーザーのパスワードを指定する。
/tr 実行するコマンドを指定する。スクリプトファイルを実行する場合は完全修飾パスとファイル名を記入する。
/sc スケジュールの期間を指定する。MINUTE、DAILY、WEEKLYなど
/mo タスクの実行頻度を指定する。例として、/scでDAILYを指定している場合、「/mo 1」と記入した場合は1日ごとに実行される。
/st タスクの実行時間を指定する。hh:mmの記入方法で分単位まで指定できる。
/ri スケジュールの繰り返し間隔を分単位で指定できる。「/ri 60」の場合は60分ごとに繰り返される。
/sd タスクを実行する最初の日を指定する。YYYY/MM/DDの形式で記入する。
/enable スケジュールされたタスクを有効化する。(/changeのみ)
/disable スケジュールされたタスクを無効化する。(/changeのみ)
/? ヘルプを表示する。

まとめ

今回は、schtasksコマンドを利用してタスクスケジューラーにタスクを設定する方法やオプションについてまとめました。

自分自身も最近学んだことなので、良い振り返りになりました。ここまでお読みいただき、ありがとうございます!

執筆担当者プロフィール
岡村 陸

岡村 陸(日本ビジネスシステムズ株式会社)

MW2部2Gの岡村陸です。SharePoint Onlineを扱うことが多いです。趣味は麻雀とバスケットボールです。よろしくお願いいたします。

担当記事一覧