PowerShell コマンドを使用してタスクスケジューラでスケジュールされたタスクを実行する
![PowerShell コマンドを使用してタスクスケジューラでスケジュールされたタスクを実行する](/img/PowerShell/feature-image---powershell-run-scheduled-task.webp)
タスクスケジューラは、スケジュールされたタスクをコンピュータ上で自動的に実行できるようにする Windows のプログラムです。タスクは、特定の事前定義された基準(トリガー)が満たされるたびに実行されます。
タスクスケジューラを使用して、アプリケーションの起動、電子メールの送信、特定の時間にスクリプトを実行するなどのタスクを実行できます。PowerShell では、コンピューターでスケジュールされたタスクを操作するための複数のコマンドレットを使用できます。
PowerShell で、スケジュールされたタスクを有効化、無効化、表示、作成、登録、開始、停止、削除、および登録解除できます。このチュートリアルでは、PowerShell コマンドを使用してタスクスケジューラでスケジュールされたタスクを開始する方法を説明します。
PowerShell のタスクスケジューラで Start-ScheduledTask
コマンドレットを使用してスケジュールされたタスクを実行する
Get-ScheduledTask
コマンドレットを使用して、コンピューターに登録されているスケジュールされたタスクのタスクオブジェクトを表示できます。
次のコマンドは、スケジュールされたすべてのタスク定義オブジェクトを取得します。
Get-ScheduledTask
出力:
-TaskName
パラメータを使用して、スケジュールされたタスクの名前を指定できます。このコマンドは、McAfeeLogon
という名前のスケジュールされたタスクのタスク定義オブジェクトを取得します。
Get-ScheduledTask -TaskName "McAfeeLogon"
出力:
TaskPath TaskName State
-------- -------- -----
\ McAfeeLogon Ready
上記の出力は、スケジュールされたタスクがルートディレクトリにあり、その状態が現在準備完了
であることを示しています。
-TaskPath
パラメータは、スケジュールされたタスクのパスを指定します。次のコマンドは、ディレクトリ\Microsoft\Office\
にあるすべてのタスク定義オブジェクトを表示します。
Get-ScheduledTask -TaskPath "\Microsoft\Office\"
出力:
PowerShell の Start-ScheduledTask
コマンドレットを使用して、スケジュールされたタスクを開始できます。このコマンドは、ルートフォルダにある McAfeeLogon
という名前の登録済みのスケジュールされたタスクを開始します。
Start-ScheduledTask -TaskName "McAfeeLogon"
次に、スケジュールされたタスク McAfeeLogon
の状態をチェックして、実行されていることを確認します。
Get-ScheduledTask -TaskName "McAfeeLogon"
出力:
TaskPath TaskName State
-------- -------- -----
\ McAfeeLogon Running
次のコマンドは、フォルダ\Microsoft\Windows\Shell\
でスケジュールされたすべてのタスクを開始します。
Get-ScheduledTask -TaskPath "\Microsoft\Windows\Shell\" | Start-ScheduledTask
次に、フォルダ\Microsoft\Windows\Shell\
でスケジュールされたタスクの状態を確認します。
Get-ScheduledTask -TaskPath "\Microsoft\Windows\Shell\"
出力:
PowerShell を使用してタスクスケジューラでスケジュールされたタスクを実行する方法を理解していただければ幸いです。ScheduledTasks
の詳細については、この記事をお読みください。