PowerShell コマンドを使用してタスクスケジューラでスケジュールされたタスクを実行する

Rohan Timalsina 2023年12月11日
PowerShell コマンドを使用してタスクスケジューラでスケジュールされたタスクを実行する

タスクスケジューラは、スケジュールされたタスクをコンピュータ上で自動的に実行できるようにする 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\"

出力:

start-scheduledtask コマンドレットを使用して、フォルダー内のすべてのタスクを開始します

PowerShell を使用してタスクスケジューラでスケジュールされたタスクを実行する方法を理解していただければ幸いです。ScheduledTasks の詳細については、この記事をお読みください。

著者: Rohan Timalsina
Rohan Timalsina avatar Rohan Timalsina avatar

Rohan is a learner, problem solver, and web developer. He loves to write and share his understanding.

LinkedIn Website