Windows環境には、作業を決められたスケジュールで自動的に実行させる機能として「タスクスケジューラ」が搭載されています。
タスクスケジューラには、OSやアプリケーションに関連するさまざまなタスクが登録されていますが、ユーザー自身がタスクを作成して、さまざまな処理を指定したタイミングで実行させることもできます。
そこでここでは、Windows 10を例に「タスクスケジューラ」の基本的な使い方を解説します。
目次
タスクスケジューラの起動
タスクスケジューラを起動する方法はいくつかあるので、自分が使いやすいと感じる方法で起動すればOKです。
プログラム一覧から
スタートメニューのプログラム一覧で「Windows管理ツール」の「タスクスケジューラ」から起動できます。
検索ボックスから
検索ボックスに「タスク」と入力して、検索結果から「タスクスケジューラ」を選択して起動できます。
「ファイル指定して実行」から
「ファイルを指定して実行」で「taskschd.msc」と入力し「OK」をクリックリックすることで「タスクスケジューラ」を起動できます。
タスクの作成
タスクスケジューラでタスクを作成する手順は、次のとおりです。
まず、画面右側のメニューから「基本タスクの作成」または「タスクの作成」をクリックします。
「基本タスクの作成」では、ウィザード形式で簡単にタスクを作成でき、「タスクの作成」では、詳細な設定を自分で指定してタスクを作成できますが、慣れないうちは「基本タスクの作成」でタスクを作成して、そのあと必要に応じて設定を変更すると良いでしょう。
以降では「基本タスクの作成」で、タスクを作成する手順を紹介します。
基本タスクの作成
「基本タスクの作成」画面が表示されたら、まずタスクの名前を指定し「次へ」をクリックします。
タスクの名前は自分が管理しやすい任意の名前でOKです。
タスクトリガー
次の「タスクトリガー」画面では、タスクを実行するタイミングを指定し「次へ」をクリックします。
実行タイミングは「毎日」「毎週」「毎月」「一回限り」「コンピューターの起動時」「ログオン時」「特定イベントのログへの記録時」が選択でき、選択した項目によって、次の画面で指定する内容が変わります。
ここでは例として「毎日」を選択します。
次の「毎日」画面では、タスクを起動する開始日時と間隔を指定し「次へ」をクリックします。
なお「間隔」に「1」を指定すると毎日実行され、「2」を指定すると1日おきに実行されます。
ちなみに、前の画面で「毎日」以外を選択したときのそれぞれの画面は、以下のとおりです。
操作
次の「操作」画面では「プログラムの開始」を選択し「次へ」をクリックします。
その他の選択肢は、画面に表示されているとおり「非推奨」なので、もしメールを送りたいときや、メッセージを表示させたいときは、ここで選択するのではなく、別途スクリプトファイルを用意して対応します。
次の「プログラムの開始」画面では、実行するプログラムを指定し「次へ」をクリックします。
プログラムに何らかの引数を指定するときは「引数の追加(オプション)」欄に入力し、プログラムを実行するときのカレントディレクトリを指定するときは「開始(オプション)」欄に、フルパスで入力します。
要約
最後の「要約」画面で、タスクの設定内容を確認し「完了]をクリックします。
以上で、タスクの作成完了です。
作成したタスクは、タスクスケジューラライブラリの一覧に追加されており、一覧では現在の状態や、トリガー、次回の実行日時、前回の実行結果などを確認できます。
また、作成したタスクを即時で実行したいときは、画面右側のメニューから「実行」をクリックすることで、スケジュールに関係なく即時で実行でき、タスクを実行させたくないときは「無効化」をクリックすることで、選択したタスクを一時的に無効化することもできます。
タスク作成時の留意事項
「基本タスクの作成」で作成したタスクは、タスクを作成したユーザーがWindows 10にサインインしているときに、タスクを作成したユーザーの権限で実行されます。
そのため、サインアウト中でもタスクを実行したいときや、別のユーザーでタスクを実行したいとき、管理者権限で実行したいときなどは、タスクの設定を変更する必要があります。
ps1ファイルを実行するときは
PowerShellスクリプトファイル(拡張子がps1のファイル)は、ダブルクリックして実行すると「PowerShell ISE」と呼ばれる開発環境ツールが起動されるため、タスクスケジューラでps1ファイルを実行させるときも、単純にps1ファイルを指定しても実行できません。
ps1ファイルを実行させたいときは、タスクの設定画面の「プログラム/スクリプト」欄には「powershell.exe」と入力し「引数の追加」欄に実行させたいps1ファイルをフルパスで入力します。
タスク設定の変更
作成したタスクの設定を変更するときは、画面中央のタスク一覧から、設定を変更したいタスクをダブルクリックします。
すると、タスクのプロパティ画面が表示され、「基本タスクの作成」で設定した内容を変更したり、より詳細な設定ができます。
タスクの保存場所を変更
作成したタスクは、デフォルトでは「タスクスケジューラライブラリ」内に保存されますが、フォルダーを作成してその中にタスクを保存することができ、自分が作成したタスクを他のタスクと分けて管理したいになどに便利です。
フォルダーを作成するには、画面左側でフォルダーを作成する場所を選択してから、画面右側のメニューから「新しいフォルダー」をクリックします。
なお、既存のタスクを別のフォルダーに移動させたいときは、後述のエクスポート/インポートが必要になります。
タスクの履歴を有効化
タスクの実行結果は、デフォルトではタスクの一覧で前回の実行結果しか確認できませんが、タスクの履歴を有効化しておけば、タスクの実行履歴がイベントログとして記録されるようになり、タスクがいつ実行されて、どのような結果だったのかを確認できるようになります。
タスクの履歴を有効化するには、画面右側のメニューで「すべてのタスク履歴を有効化する」をクリックします。
タスクの履歴は、それぞれのタスクの「履歴」タブで確認できます。
タスクのエクスポート/インポート
タスクスケジューラに登録されているタスクは、XML形式ファイルとしてエクスポートしたり、インポートすることができ、タスクをフォルダー間で移動させたいときや、複数のWindowsマシンで同じ設定のタスクを作成するときなどに役立ちます。
タスクをエクスポートするときは、タスクを選択してから、画面右側のメニューで「エクスポート」をクリックします。
タスクをインポートするときは、タスクをインポートしたい場所を選択してから、画面右側のメニューで「インポート」をクリックし、インポートしたいXMLファイルを指定します。
コマンドでタスクを管理する
タスクスケジューラのタスクは、Windowsコマンド「schtasks」や、PowerShellコマンドレットで作成・管理することもできます。
詳しくは、以下の記事をご覧ください。
あとがき
Windows環境で定期的に処理を実行したいとき、たいていのことはタスクスケジューラで対応できます。ご活用あれ。