タスクスケジューラーでPowerShellスクリプトを実行する方法

PowerShellスクリプトを書いておき、それをタスクスケジューラーで実行させたい場面があります。例えば深夜だれも使っていない時間帯に処理を行いたいけど、その時間にたちあいをするほどではない場合など。 直接PowerShellスクリプトを指定するのはあまりよくありません。関連付けの設定によりますがスクリプトがNotepadで開かれるだけだったりします。 このような場合にはpowershell.exeを実行し、引数としてスクリプトファイルのパスを指定するのが良いです。以下の様な感じです。 プログラムの場所は以下です。 - C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -cオプションでスクリプトのフルパスを記載します。さらに引数が必要な場合にはその後に続けることができます。

January 9, 2014 · 1 min · 胡田昌彦

タスクスケジューラーで定期的に処理を実行させる

何をするものか? タスクスケジューラーはWindowsの標準機能であり、決まった日時、時刻にプログラムを実行するためのものです。1度きりの実行をさせることもあれば、くり返して何度も実行させるようなことも可能です。 プログラムが起動できるということは結局なんでもできるということです。想像力を膨らませて運用を楽にしましょう。 どのように設定するのか? タスクスケジューラーは以下の場所からアクセスします。 [すべてのプログラム] - [アクセサリ] - [システムツール] - [タスク](※Vista, 2008では「タスクスケジューラ」) すると、実際に設定されているタスクの一覧が表示されます。Windows XPや2003以前は規定の状態では特に何も設定されていませんが、Windows Vista, 2008では規定の状態で大量にタスクが登録されています。 どちらが良い、悪い、ということもありませんが、びっくりしないようにしましょう(笑。 タスクの作成方法(XP, 2003) タスクの作成はウィザードに従っていけばいいだけなので、簡単です。 まず、「スケジュールされたタスクの追加」を実行します。 ここで、実行するプログラムを選択します。多くの場合は「参照」ボタンを押して、バッチファイルを起動することになるでしょう。 ここで、タスクの実行単位を選択できます。コンピューター起動時やログオン時などにも実行できますが、このあたりは他にも実行手段があるので、主に使うのはその他の選択肢だと思います。 この選択肢だけを見ると、「最小単位でも”日”だから1日に何度も実行させるようなスケジュールは組めないんだな」と思ってしまいがちですが、そうではありません。きちんとそういうこともできます。が、まずはウィザードを進めていきましょう。 上記は「日単位」を選択した場合の画面です。毎日実行するのか、平日のみにするのか、数日おきに実施するのか、開始日をいつにするのか等を選択します。 次にコマンドの実行アカウントの指定画面が出てきます。ここできちんと実行する権限のあるユーザーとパスワードを入力しておかないとうまく動きませんので注意。 より細かい実行スケジュールのコントロールをしたければ「詳細プロパティを開く」ようにチェックボックスをつけておきましょう。もちろんここでチェックをつけなくてもあとから詳細プロパティを開き、設定変更することができます。 ここでは、「ログオンしている場合にのみ実行」ということをコントロール可能です。 「スケジュール」タブが実行感覚のコントロールの肝になってきます。「詳細設定」を押します。 この項目の「タスクを繰り返し実行」というのが1日単位よりも細かく実行させるための設定になります。わかりずらいですが、上記の設定であれば、6月30日以降の毎日23時00分になったらタスクが実行されるのですが、タスクを10分間隔で1時間実行する設定になっているので、具体的には以下の時刻に合計6回プログラムが実行されることになります。 - 23時00分 - 23時10分 - 23時20分 - 23時30分 - 23時40分 - 23時50分 - 24時00分(※この最後の1回が実行されるのかどうかはちょっと自信が無いです。実際に確認し、Updateします。) 本当に1日中10分おきにずっとプログラムを起動し続けたいなら、継続時間を「24時間」にしておけばいいわけですね。 ちなみに、裏技チックですが、タスクの詳細画面からだと、ウィザードでは出てこない「アイドル時」に実行させるという選択肢も選べます。 設定し終わったら、必ず「タスク」にて意図した設定になっているかを確認すると良いと思います。また、パスワードのうち間違いなどの可能性もありますので、必ず「タスクの実行」を選択し、意図したとおりに起動することを確認しておくと良いと思います。 タスクの作成方法(Vista, 2008) Vista, 2008ではXP, 2003よりもはるかに高機能になっています。まず、「新しいタスクの作成」を行います。 ...

June 30, 2009 · 1 min · 胡田昌彦