初心者でもできる!WindowsタスクスケジューラでPowerShellスクリプトを自動実行する方法

パソコンパソコン・スマホ教室
スポンサーリンク

パソコンを使っていると、「毎日決まった時間にバックアップを取りたい」「特定の時間に通知を表示したい」といったことがあるかもしれません。そんなときに便利なのが、Windowsに標準で搭載されている「タスクスケジューラ」です。今回は、PowerShellスクリプトを使って、これらの作業を自動化する方法を、初心者の方にもわかりやすくご紹介します。

スポンサーリンク

目次

Windowsのイメージ

Windowsのイメージ

  1. タスクスケジューラとは?
  2. PowerShellスクリプトを作成する
  3. タスクスケジューラでスクリプトを自動実行する設定
  4. よくある質問
  5. まとめ

タスクスケジューラとは?

タスクスケジューラは、Windowsに標準で備わっているツールで、指定した日時や条件で自動的にプログラムやスクリプトを実行することができます。例えば、「毎日午前9時にバックアップを取る」「パソコンの起動時に特定のアプリを開く」といった設定が可能です。

PowerShellスクリプトを作成する

まずは、実行したい処理をPowerShellスクリプトとして作成します。例えば、毎日12時にデスクトップに通知を表示するスクリプトは以下のようになります。


$bodyText = 'お昼の時間です!'
$ToastText01 = [Windows.UI.Notifications.ToastTemplateType, Windows.UI.Notifications, ContentType = WindowsRuntime]::ToastText01
$TemplateContent = [Windows.UI.Notifications.ToastNotificationManager, Windows.UI.Notifications, ContentType = WindowsRuntime]::GetTemplateContent($ToastText01)
$TemplateContent.SelectSingleNode('//text[@id="1"]').InnerText = $bodyText
$AppId = '{1AC14E77-02E7-4E5D-B744-2EB1AE5198B7}\WindowsPowerShell\v1.0\powershell.exe'
[Windows.UI.Notifications.ToastNotificationManager]::CreateToastNotifier($AppId).Show($TemplateContent)

このスクリプトを「C:\スクリプト\TEST.ps1」というファイル名で保存します。

タスクスケジューラでスクリプトを自動実行する設定

次に、タスクスケジューラを使って、このスクリプトを毎日12時に自動実行するよう設定します。

  1. スタートメニューから「タスクスケジューラ」を検索して起動します。
  2. 右側の「タスクの作成」をクリックします。
  3. 全般タブで、タスクの名前を「定期実行テスト」と入力します。
  4. トリガータブで、「新規」をクリックし、「毎日」を選択して開始時間を「12:00:00」に設定します。
  5. 操作タブで、「新規」をクリックし、以下のように設定します
  6. 操作プログラムの開始
  7. プログラム/スクリプトpowershell
  8. 引数の追加-ExecutionPolicy Bypass C:\スクリプト\TEST.ps1
  9. 開始C:\スクリプト
  10. 条件タブや設定タブで、必要に応じて設定を調整します。
  11. 「OK」をクリックしてタスクを保存します。

これで、毎日12時に指定したスクリプトが自動的に実行されるようになります。

よくある質問

Q1: タスクスケジューラでスクリプトが実行されません。どうすればいいですか?

タスクの「全般」タブで、「最上位の特権で実行する」にチェックを入れてみてください。また、タスクを実行するユーザーアカウントがスクリプトの実行に必要な権限を持っているか確認してください。

Q2: スクリプトの実行ポリシーとは何ですか?

PowerShellにはスクリプトの実行を制限する「実行ポリシー」があります。タスクスケジューラでスクリプトを実行する際には、「-ExecutionPolicy Bypass」を引数に追加することで、実行ポリシーを一時的に無効にできます。

Q3: スクリプトの実行結果を確認する方法はありますか?

スクリプト内にログ出力の処理を追加することで、実行結果を確認できます。例えば、`Out-File`コマンドレットを使用して、ログファイルに出力することができます。

今すぐ解決したい!どうしたらいい?

LINE公式

いま、あなたを悩ませているITの問題を解決します!
「エラーメッセージ、フリーズ、接続不良…もうイライラしない!」

あなたはこんな経験はありませんか?

✅ ExcelやWordの使い方がわからない💦
✅ 仕事の締め切り直前にパソコンがフリーズ💦
✅ 家族との大切な写真が突然見られなくなった💦
✅ オンライン会議に参加できずに焦った💦
✅ スマホの重くて重要な連絡ができなかった💦

平均的な人は、こうしたパソコンやスマホ関連の問題で年間73時間(約9日分の働く時間!)を無駄にしています。あなたの大切な時間が今この悩んでいる瞬間も失われています。

LINEでメッセージを送れば即時解決!

すでに多くの方が私の公式LINEからお悩みを解決しています。

最新のAIを使った自動応答機能を活用していますので、24時間いつでも即返信いたします。

誰でも無料で使えますので、安心して使えます。

問題は先のばしにするほど深刻化します。

小さなエラーがデータ消失重大なシステム障害につながることも。解決できずに大切な機会を逃すリスクは、あなたが思う以上に高いのです。

あなたが今困っていて、すぐにでも解決したいのであれば下のボタンをクリックして、LINEからあなたのお困りごとを送って下さい。

相談しに行く

ぜひ、あなたの悩みを私に解決させてください。

まとめ

WindowsのタスクスケジューラとPowerShellスクリプトを組み合わせることで、パソコンの作業を自動化し、効率的に運用することができます。今回ご紹介した手順を参考に、ぜひ自分の環境に合わせた自動化を試してみてください。

他にも疑問やお悩み事があればお気軽にLINEからお声掛けください。

コメント

タイトルとURLをコピーしました