Windowsでバッチファイルをスケジュール実行する方法|タスクスケジューラの使い方
パソコンの本当の価値は、面倒で反復的な作業を自動化してくれることにあります。人間がやりたくない単調な作業こそ、コンピューターに任せるべきものです。
バッチファイルはタスクを自動化するための最も手軽な手段のひとつです。さらに、そのバッチファイルを「スケジュール実行」できるようにすれば、強力な生産性向上ツールになります。
タスクスケジューラでバッチファイルをスケジュールする手順
バッチファイルを作成したら、次はそれを定期的に自動実行させたくなるはずです。最も簡単な方法は、Windowsに標準搭載されている「タスクスケジューラ」を使うことです。このツールを使えば、指定した日時にジョブを自動的に実行できます。
- Windowsのスタートボタンをクリックし、「scheduler」または「タスク スケジューラ」と入力します。検索結果の上位にタスク スケジューラが表示されるので、それを選択します。
タスクスケジューラを開くと、すでに多数のスケジュール済みタスクが登録されていることに気づくでしょう。Windows本体や各種プログラムも、内部でスケジュールタスクを利用しています。
- 自分のタスクが既存のタスクの中に埋もれないよう、専用フォルダーを作成しましょう。タスク スケジューラ ライブラリを右クリックして新しいフォルダー…を選択するか、画面右側の操作ウィンドウから新しいフォルダーを選びます。
- 新しいフォルダーに名前を付けます。後で見てもすぐ内容が分かる、意味のある名前にするのがおすすめです。
- 作成したフォルダーを右クリックしてタスクの作成…を選択するか、操作ウィンドウからタスクの作成…をクリックします。
- タスクの作成ウィンドウが全般タブで開きます。名前欄には分かりやすいタスク名を入力し、説明欄にはタスクの内容を書きましょう。呼び出すスクリプトの保存場所も記載しておくと、後からタスクやスクリプトを修正するときに役立ちます。
また、ユーザーまたはグループの変更ボタンに注目してください。ここから、スクリプトを別のユーザーとして実行できます。バッチファイルに管理者権限が必要な場合は、ユーザーをAdministratorに変更しましょう。管理者のパスワード入力が求められるため、勝手にPCを乗っ取れるような仕組みではない点も安心です。
初期設定では、スクリプトはユーザーがログオンしているときのみ実行するになっています。いつでも実行したい場合は、ユーザーがログオンしているかどうかにかかわらず実行するに変更してください。
その他のオプションについては、ほとんどのタスクでデフォルト値のままで十分です。必要になったときに変更できることを覚えておけばOKです。
- トリガータブを選択します。トリガーとは、タスクをいつ実行するかを決める条件のことです。新規ボタンを押してトリガーを作成します。
- 新しいトリガーのウィンドウには多くのオプションが用意されています。まずは全体を眺めて、どんな設定ができるのか把握しておきましょう。
- タスクの開始ドロップダウンメニューで、基本的なトリガーの種類を選択します。主な選択肢は以下の通りです。
- スケジュールに従う
- ログオン時
- スタートアップ時
- アイドル時
- イベント時
- タスクの作成/変更時
- ユーザーセッションへの接続時
- ユーザーセッションからの切断時
- ワークステーションのロック時
- ワークステーションのロック解除時
最もよく使われるのはスケジュールに従うです。今回はこれを採用します。
- 続いて設定のスケジュールオプションを選びます。選択肢は以下の通りです。
- 1 回限り
- 毎日
- 毎週
- 毎月
この例では毎日を選択しました。スケジュールの開始日時や繰り返し間隔も、ここで自由に設定できます。
- 詳細設定では、トリガーのより細かい挙動を指定できます。この例では5分ごとに繰り返す、無期限に設定しています。有効チェックボックスはデフォルトでオンになっていますが、スケジュールタスクが動かないときのトラブルシューティングでは、真っ先にここを確認しましょう。トリガーの設定が完了したらOKをクリックします。
- 操作タブを選択し、新規をクリックして、スケジュールタスクに何をさせるのかを指定します。
- 操作ドロップダウンメニューでは、以下から選択できます。
- プログラムの開始
- 電子メールの送信
- メッセージの表示
後者の2つは廃止された機能で、現在はサポートされていません。バッチファイルをスケジュールするときは使わないようにしましょう。デフォルトのプログラムの開始のままにしておきます。
スクリプトへのフルパスを入力します。参照ボタンでスクリプトの場所へ移動し、対象ファイルを選択してください。
引数の追加と開始フィールドは空欄のままで構いません。ただし、より複雑なスクリプトやタスクを扱うようになると必要になります。特にPowerShellスクリプトをスケジュールする際には必須の項目です。入力が終わったらOKをクリックして続行します。
- これでタスクのスケジュール登録は完了です。OKを押してウィンドウを閉じ、タスクスケジューラに戻りましょう。作成したタスクを選択してテスト実行します。タスクを右クリックして実行を選ぶか、操作ウィンドウの実行をクリックしてください。
タスクの実行が終わったら、前回の実行結果列を確認します。操作は正常に完了しましたと表示されていれば成功です。
それ以外の表示が出た場合は、まずF5キーで画面を更新してみてください。それでも変わらない場合は、スクリプト自体かスケジュール設定のどちらかに問題があります。トラブルシューティングを行いましょう。
「条件」タブと「設定」タブはどう使う?
上記の手順では説明しなかったタブが2つあります。ほとんどのタスクでは、これらのタブを触る必要はありません。デフォルト値のままにしておくのが基本ですが、せっかくなので内容を確認しておきましょう。
タスクの作成 – 条件
このタブの設定は、コンピューターの状態に関わるものです。タスクが大量のリソースを消費したり、PCを使用中の人の妨げになったりする可能性がある場合は、アイドルセクションを見直しましょう。
電源セクションでは、デフォルトでコンピューターをAC電源で使用している場合のみタスクを開始するとコンピューターの電源をバッテリーに切り替える場合は停止するにチェックが入っています。
バッチファイルのスケジュール運用では、通常このままで問題ありません。ただし、省電力のためにPCをスリープさせる設定にしている場合は注意が必要です。コンピューターがスリープ中だと、タスクは実行されません。その場合は、スリープ解除してこのタスクを実行するにチェックを入れましょう。
最近のPCはほぼ常時ネットワークに接続されていますが、タスクが安定したネットワーク接続に依存している場合は、ネットワークセクションを調整してください。
タスクの作成 – 設定
設定タブは、タスクの動作(実行方法)に関わる項目です。要求時タスクを実行するはデフォルトで有効になっており、その他の選択肢は、タスクがスキップされたり失スキップされたり失敗したりした場合の挙動に関係します。
タスクがループにはまり込んだり、トリガーの条件が満たされずに実行されなかったりすることもあります。こうした状況に対応するための設定がここに用意されています。ほとんどのタスクでは、デフォルト設定のままで十分でしょう。
スケジュール実行できるバッチファイルの活用例
タスクのスケジュール方法をマスターすると、自動化したいアイデアが次々と浮かんでくるはずです。古いファイルの自動削除、お気に入りのアプリのログイン時自動起動、失敗した印刷ジョブのキュー自動クリアなど、繰り返し行っている作業なら、たいていスクリプト化してスケジュール登録できます。あなたの日々のルーチン作業を、ぜひバッチファイルとタスクスケジューラで効率化してみてください。
-
Windows 10でファイル拡張子を表示する5つの方法|エクスプローラーの設定からレジストリ編集まで
コンピューター上のすべてのファイルには、必ず拡張子が付いています。拡張子はファイルの「身分証明書」のようなもので、そのファイルがどのカテゴリーに属しているのか、どのソフトウェアで開けるのかをユーザーに知らせてくれる重要な情報です。また、オペレーティングシステムにとっては、ファイルをダブルクリックした際に適切なアプリケーションを割り当てるための目安にもなります。動画や画像の既定のプログラムを設定すると、Windows OSは拡張子を確認し、その設定を次回以降のために記憶します。 番号 拡張子 種類 対応アプリケーション 1 .MP4 .AVI .WMV .MKV .MPG 動画
-
Windows 10でファイルを暗号化する方法|標準機能とフリーソフト両方の手順を徹底解説
Windows 10のパソコンでは、ファイルを暗号化して同時にパスワード保護をかけられることをご存知ですか?この機能を活用すれば、許可した相手以外はあなたのプライベートなファイルを開けなくなります。ここで注意したいのは、ファイルの暗号化は単なるロックとは違うという点です。ロックは解除されたりハッキングされたりする恐れがありますが、強力な暗号化を施しておけば、適切なソフトと正しいパスワードを持たない人にとって、そのファイルはただの無意味なデータになります。この記事では、Windows 10のパソコンでファイルを暗号化・復号化する具体的な手順を、2つの方法に分けて詳しく解説します。方法1:Wind