連載
» 2014年04月07日 12時00分 UPDATE

Windows TIPS:タスクスケジューラの基本的な使い方(Windows 7/8/8.1編)

ファイルのバックアップなど定期的に繰り返し実行しなければならない作業は、Windows OSの標準機能「タスクスケジューラ」で自動化しよう。ウィザードを利用すれば、簡単にプログラム起動のスケジュールを組むことができる。

[島田広道,デジタルアドバンテージ]
Windows TIPS
Windows Server Insider


「Windows TIPS」のインデックス

連載目次

対象OS:Windows 7/Windows 8/Windows 8.1/Windows Server 2008 R2/Windows Server 2012/Windows Server 2012 R2


解説

 コンピューターを使って業務をこなしていると、毎日ほとんど同じことを繰り返している作業も少なくない。代表例としてはファイルのバックアップが挙げられるだろう。こうした作業を手動で繰り返すのは非効率かつ面倒なので、できる限りコンピューターに自動実行させたいところだ。

 定例の作業を自動化できる機能として、Windows OSには「タスクスケジューラ」が標準で装備されている。本稿ではWindows 7/8/8.1とWindows Server 2008 R2/2012/2012 R2を対象に、このタスクスケジューラを利用して定期的にプログラム起動を繰り返すための基本的な設定手順を説明する。

 Windows XP/Windows Server 2003におけるタスクスケジューラの基本的な設定手順については、TIPS「タスクスケジューラとWSHで定例処理を実現する」を参照していただきたい。

操作方法

 本稿では、Windows 7/8/8.1やWindows Server 2008 R2/2012/2012 R2のタスクスケジューラを利用して、毎日決まった時刻に特定フォルダーをファイルサーバーへバックアップするタスクの作成手順を紹介する。プログラムを差し替えれば、バックアップ以外のタスクも同様の手順で作成できる。

 以下の画面はWindows 7のものだが、特記しない限りWindows 8.1など他のWindows OSと操作方法は共通だ。

●タスクスケジューラの設定画面を開く

 タスクスケジューラの設定をするには、まずコントロールパネルから[システムとセキュリティ]−[管理ツール]をクリックし、[タスク スケジューラ]をダブルクリックしてタスクスケジューラの設定画面を開く。Windows 8/8.1/Windows Server 2012/2012 R2の場合は画面左下隅にカーソルを移動して右クリックするとクイックアクセスメニューが表示されるので、[コントロール パネル]を選択してから、同じようにして[タスク スケジューラ]を開く。コントロールパネルのアプレットがアイコン別に表示されている場合([表示方法]が「大きいアイコン」か「小さいアイコン」の場合)、[管理ツール]−[タスク スケジューラ]とクリックすればよい。

タスクスケジューラをコントロールパネルから起動する タスクスケジューラをコントロールパネルから起動する
新たなタスクを作成するには、まずタスクスケジューラのUIを表示させる。
  (1)コントロールパネルから[システムのセキュリティ]−[管理ツール]とクリックすると、このウィンドウが表示される。
  (2)これをダブルクリックするとタスクスケジューラの設定画面が表示される。→[A]

 Windows XP/Windows Server 2003では、タスクスケジューラのUIはWindowsエクスプローラーの特殊なフォルダーだったが、Windows Vista以降ではこのようにMMC(Microsoft管理コンソール)ベースの管理ツールとして実装されている。ただし、「管理ツール」といっても、管理者権限の無い一般ユーザーのアカウントでもタスクが作成できることは共通だ(一部の機能は管理者権限が必要)。

●新たにタスクを作成する

 新しくタスクを作成するには、タスクスケジューラの左ペインのツリーで[タスク スケジューラ (ローカル)]フォルダーを選択してから、右側の操作ペインで[基本タスクの作成]をクリックする。これでタスク作成ウィザードが起動する。なお、これで作成されるタスクはログオン中のユーザーアカウントの権限で起動されるように設定されるので、これから登録するプログラムが正しく実行できる権限を持ったユーザーアカウントであらかじめWindowsにログオンし、以下の作業を進めること。

[A]

新たなタスクを作成するウィザードを起動する 新たなタスクを作成するウィザードを起動する
[管理ツール]から[タスク スケジューラ]を起動すると、この画面が表示される
  (1)まず[タスク スケジューラ (ローカル)]を選ぶ。これにより[タスク スケジューラ ライブラリ]フォルダーに新しいタスクが格納される。むやみに他のフォルダーを選んでタスクを作成すると、どのフォルダーに格納されたか分からなくなりがちなので注意する。
  (2)これをクリックすると、タスクの新規作成ウィザードが起動する。→[B]

 操作ペインの[基本タスクの作成]のすぐ下にある[タスクの作成]の方をクリックすると、ダイアログ形式で細かい設定を指定しながらタスクを新たに作成できる(後述する「作成したタスクの設定を変更する」で触れている詳細設定ダイアログが表示される)。慣れないうちは上述のウィザード形式でタスクを作成し、その後で必要に応じて設定を変更する方が簡単だろう。以下ではウィザード形式における各画面の見方や設定方法について説明する。

 ウィザードの最初の画面では、タスクに付ける名前とその説明を指定する。名前はタスク作成完了後に変更できないので、間違えないように十分注意する。

[B]

タスクに名前を付ける タスクに名前を付ける
これはタスク作成ウィザードの最初に表示される画面。
  (1)このタスクに付ける名前を入力する。ここで付けた名前は、いったんタスク作成を完了すると容易には変更できなくなるので、間違えないように十分注意すること。
  (2)このタスクに関する説明やメモを入力する。

 名前の次は、1日単位あるいは1週間単位、1カ月単位といった具合にタスクを起動する頻度を指定する。繰り返さずに1回だけ起動したり、コンピューターの起動時など特別なタイミングで起動したりするようにも設定できる。本稿では「毎日」を選択する。

タスクを起動する頻度を指定する タスクを起動する頻度を指定する
ここで選択した項目によって、次のウィザード画面で指定する内容(タスクを実行するタイミング)が変わる。本稿では「毎日」を選んだ場合を説明する。
  (1)1日/1週間/1カ月という単位でタスク起動を繰り返す場合は、これらから該当するものを選ぶ。
  (2)繰り返し起動するのではなく、特定の日時に1回だけタスクを起動する場合は、これを選ぶ。
  (3)電源オンや再起動によってコンピューターが起動したときにタスクを起動する場合は、これを選ぶ。ただし、このタスクを作成するには通常、管理者権限が必要になる(正確には、コンピューター起動時にタスクを起動する権限を持つユーザーアカウントを、このウィザードの途中で指定する必要がある)。
  (4)ユーザーがログオンしたときにタスクを起動する場合は、これを選ぶ。
  (5)特定のイベントが発生してイベントログに記録されたときにタスクを起動する場合は、これを選ぶ。

 次は、「2013年5月27日から毎日12:10に起動する」というように、タスクを起動するタイミングを具体的に指定する。

タスクを起動するタイミングを指定する タスクを起動するタイミングを指定する
これは1つ前のウィザードで、[毎日]を選んだ場合に表示される画面。[毎週]を選んだら曜日、[毎月]を選んだら月をそれぞれ選ぶ画面が表示される。
  (1)このタスクを繰り返し起動するスケジュールを始める年月日を指定する。すぐ開始したければ作成当日を指定する。
  (2)このタスクを起動する時刻を指定する。本稿では「12:10」としている。
  (3)このタスクを何日おきに実行するか、その間隔を指定する。例えば「1」を指定すると毎日実行されるし、「2」なら1日おきに実行される。

 起動タイミングを指定したら、次は実行するタスクの内容を指定する。本稿では[プログラムの開始]を選択する。

タスクとして実行する内容を指定する タスクとして実行する内容を指定する
ここで選択した項目によって、次のウィザード画面で指定する内容が変わる。本稿では[プログラムの開始]を選択した場合の例を説明する。
  (1)何らかのプログラム(ソフトウェア)を起動したい場合は、これを選ぶ。プログラム自体はこの後のウィザードで選択する。
  (2)タスク起動時に電子メールを送信したい場合は、これを選ぶ。この後のウィザードで宛先や本文、送信サーバーのアドレスなどを指定する。なおWindows 8以降では、これを選択してもウィザードの最後でエラーが発生し、タスクを作成できない。そのため、(1)を選んでメール送信プログラムを指定するといった代替策が必要だ。
  (3)タスク起動時にテキストメッセージ(メッセージボックス)を画面に表示したい場合は、これを選ぶ。これもWindows 8以降ではエラーが発生してしまい、タスクを作成できない。そのため、(1)を選んでメッセージボックス表示プログラムを指定するといった代替策が必要だ。

 次は、実行するプログラムのパスとコマンドラインパラメーター、実行時のカレントフォルダーを指定する。項目名が適切でなかったり入力欄が短かったりして、ちょっと見方が分かりにくい画面なので注意していただきたい。

起動するプログラムを指定する 起動するプログラムを指定する
これは1つ前のウィザードで、[プログラムの開始]を選んだ場合に表示される画面。
  (1)起動するプログラムのパスとファイル名を指定する。PATH環境変数に記載されたフォルダーにある実行ファイルであれば、ファイル名だけでもよい。
  (2)プログラムに何らかの引数(コマンドラインのパラメーター)を指定する場合は、ここに入力する。この例では、robocopyコマンドのパラメーターとして、コピー元フォルダー「data」とコピー先フォルダー「\\Server1\backup\user01」を指定している。不要なら空のままでよい。
  (3)「開始」という名称からは連想しにくいが、このプログラムを起動する際のカレントフォルダーをフルパスで入力する。このとき、パスをダブルクオート(二重引用符)でくくらないこと(エラーになる)。パスの指定が不要なら空のままでよい。ここでは、(2)のdataフォルダーが存在するパスを指定している。

 あとは、次の画面で設定内容を確認して[完了]ボタンをクリックすればウィザードは完了し、タスクが作成される。

設定内容を確認してタスク作成をする 設定内容を確認してタスク作成をする
これはウィザードの最後に表示される画面。表示された設定内容を確認して[完了]ボタンをクリックすれば、タスクが作成される。

 以上の手順により、毎日12:10にrobocopyコマンドでファイルサーバーにファイルをバックアップするタスクが作成できたはずだ。

 [基本タスクの作成]ウィザードで作成したタスクはデフォルトで、作成時と同じユーザーアカウントでWindows OSに対話的ログオンをしているときのみ起動される。ログオフ中でもタスク(プロセス)が起動されるようにする方法については、TIPS「ログオフ中でもタスクを起動させる方法」を参照していただきたい。

●作成したタスクの設定を変更する

 新たに作成したタスクを確認するには、まずタスクスケジューラの画面の左ペインで[タスク スケジューラ ライブラリ]を選び、右クリックして表示されるメニューから[最新の情報に更新]をクリックする。作成したタスクは、真ん中のペイン(下の画面の(2))に表示される。ウィザードで設定した内容を変更したり、ウィザードには現れなかった細かい項目を設定したりするには、該当タスクを右クリックして[プロパティ]をクリックする。

作成したタスクの設定を変更するためにプロパティを開く 作成したタスクの設定を変更するためにプロパティを開く
これは上述のタスクを作成した直後のタスクスケジューラの画面。
  (1)このフォルダーを選択し、右クリックして表示されるコンテキストメニューの[最新の情報に更新]をクリックする。
  (2)(1)の[タスク スケジューラ ライブラリ]フォルダーに格納されているタスクの一覧が表示される。先ほど作成したタスクを選んで右クリックしてコンテキストメニューを表示させる。なお、横スクロールしていくとタスクごとに、実行中かどうか、いつ起動するか、次回の起動は何時か、前回の起動は成功したのか、といった情報を確認できる。
  (3)このメニューをクリックすると、選択したタスクの詳細設定(プロパティ)画面が表示される。→[C]
  (4)これをクリックすると即座にこのタスク(プロセス)が起動される。設定した起動タイミングを待つ必要がないので、動作確認に便利だ。

 タスクのプロパティ画面では、例えばバッテリ駆動中にタスクを起動しないとか、指定期日でタスク起動の繰り返しを終了する、などといった、ウィザードには無かった設定が可能だ。

[C]

作成したタスクのプロパティ画面 作成したタスクのプロパティ画面
この画面から、タスク作成ウィザードには無かった細かい設定ができる。
  (1)タスクの説明の他、タスクを実行するユーザーアカウントを変更できる。ただし、むやみに設定を変更すると、アカウントの権限不足によってタスク起動に失敗することがよくある。
  (2)タスクを起動するタイミングや繰り返しの間隔、開始から停止までの期間などの設定を変更できる。
  (3)タスクによって実行されるプログラムやパラメーターなどを変更できる。
  (4)コンピューターがバッテリ駆動中の場合はタスクを起動しない、あるいは特定のネットワーク接続が有効な場合のみタスクを起動する、といったタスク起動のための条件を設定できる。
  (5)指定日時にタスクを起動できなかった場合や、すでに同じタスクが実行中の場合におけるタスクの挙動を設定できる。
  (6)タスクの開始/終了あるいはエラーなど、過去のタスク実行によって発生したイベントの履歴を確認できる。これが無効になっている場合は、タスクスケジューラの操作ペインにある[すべてのタスク履歴を有効にする]をクリックすると、履歴が表示されるようになる。

 [全般]タブの設定については、次の記事が参考になる。

 [トリガー]タブの設定については、次の記事が参考になる。

 [条件]タブの設定については、次の記事が参考になる。

●作成したタスクをすぐ実行して動作を確認する

 新たに作成したり設定を変更したりしたタスクの動作をすぐ確認したければ、タスクスケジューラの画面で該当タスクを右クリックし、表示されたメニューから[実行]をクリックする。これにより、設定した起動タイミングを待つことなく、即座にタスクを実行できる。

■更新履歴

【2014/04/07】Windows 8.1/Windows Server 2012 R2向けの記述を追記しました。またWindows 8以降では、タスクの実行内容として「電子メールの送信」「メッセージの表示」が利用できないことを明記しました。

【2013/07/18】[基本タスクの作成]ウィザードで作成したタスクはデフォルトで、対話的ログオンをしているときだけ起動されることを明記しました。

【2013/05/31】画面「作成したタスクのプロパティ画面」の説明で、「(1)タスクの名前や説明の他、タスクを実行するユーザーアカウントを変更できる」と記していましたが、実際にはタスクの名前は変更できません。おわびして訂正いたします。またWindows 8/Windows Server 2012向けの記述を追記しました。

【2011/02/25】初版公開(対象はWindows 7/Windows Server 2008 R2)。


「Windows TIPS」のインデックス

Windows TIPS

Copyright© 1999-2014 Digital Advantage Corp. All Rights Reserved.

TechTargetジャパン

Loading

ホワイトペーパー(TechTargetジャパン)

注目のテーマ

Focus

- PR -

転職/派遣情報を探す

【転職サーチ】SIer/Web企業/新規事業 スマホ開発で、あなたのキャリアを生かす

「派遣・フリーで働くメリット」とは? 活躍する派遣エンジニアの本音

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。