PowerShellコマンドレット虎の巻

Get-Job

Get-Jobは、ジョブの情報を取得するコマンドです。

エイリアスgjb

解説

現在のセッションで開始されたすべてのバックグラウンドジョブを取得します。
ジョブIDや名前、状態、コマンドなどの条件を指定して特定のジョブを取得できます。

構文

(構文)
Get-Job [-Name] <string[]> [<CommonParameters>] Get-Job [-State] <状態> [<CommonParameters>] Get-Job [<CommonParameters>] Get-Job [-Filter] <hashtable> [<CommonParameters>] Get-Job [[-Id] <int[]>] [<CommonParameters>] Get-Job [-InstanceId] <guid[]> [<CommonParameters>]
【主要パラメータ】
パラメータ説明
-IncludeChildJob親ジョブに加えて子ジョブも取得する
(例)Get-Job -IncludeChildJob
-ChildJobState 値特定の状態の子ジョブのみを取得する
・NotStarted(開始前)
・Running(実行中)
・Completed(完了)
・Failed(失敗)
・Stopped(停止)
・Blocked(ブロック)
・Suspended(一時停止)
・Disconnected(切断)
・Suspending(一時停止中)
・Stopping(停止中)
・AtBreakpoint(ブレークポイントで停止)
(例)-ChildJobState Failed
-HasMoreDataデータがまだ取得されていないジョブを取得する
-Before 日時指定した日時の前に開始されたジョブを取得する
(例)Get-Job -Before (Get-Date).AddDays(-1)
-After 日時指定した日時の後に開始されたジョブを取得する
(例)Get-Job -After (Get-Date).AddDays(-1)
-Newest最新のジョブを指定した数取得する
(例)Get-Job -Newest 5
-Id ジョブIDジョブIDを指定してジョブを取得する
(例)Get-Job -Id 3
-Name ジョブ名ジョブ名を指定してジョブを取得する
※ワイルドカードも使用可
(例)Get-Job -Name "Job*"
-InstanceId GUID特定のジョブインスタンスを一意に識別する
-State 状態特定の状態のジョブを取得する
(Running, Completed, Failed等)
(例)Get-Job -State Running
-Command特定のコマンドを含むジョブを取得する
(例)Get-Job -Command "*Get-Process*"
-Filter条件を指定してジョブを取得する
(例)Get-Job -Filter @{State="Running"; Command="Get-Process"}

共通的なパラメータは「共通パラメータ」をご覧ください。

サンプル

すべてのジョブを取得する

Get-Job

ジョブID=3のジョブを取得する

Get-Job -Id 3

ジョブ名を指定してジョブを取得する

Get-Job -Name "TestJob"

実行中のジョブを取得する

Get-Job -State Running

1時間前から後に開始されたジョブを取得する

Get-Job -After (Get-Date).AddHours(-1)

コマンドのヘルプを表示する

Get-Help Get-Job

備考

  • Get-Jobはジョブの情報を返しますがジョブの結果は含みません。結果を取得したい場合はReceive-Jobコマンドレットをご使用ください。

関連項目