もくじ
📝 はじめに
PowerShellで Start-Job を使って処理を実行していると、
「完了したジョブが残り続けている」
「もう使わないジョブを整理したい」
と感じることがあります。
そんなときに使うのが、
ジョブを完全に削除できる
Remove-Job です。
この記事では、ジョブ管理の仕上げとして欠かせない
Remove-Job の使い方を解説します。
- 完了済みジョブを整理したい
- 失敗したジョブを削除したい
- ジョブ一覧をきれいな状態に保ちたい
✅ このコマンドでできること(要点)
- PowerShellジョブを完全に削除できる
- ジョブIDや名前を指定して削除できる
- 複数のジョブをまとめて削除できる
- ジョブ管理をクリーンな状態に保てる
✅ Remove-Job でできること
Remove-Job は、
PowerShellセッション内に存在するジョブを
完全に削除するためのコマンドです。
削除されたジョブは、
結果・状態ともに復元できません。
そのため、必要であれば事前に
Receive-Job で結果を取得しておくことが重要です。
「後片付け」を行うためのコマンドと考えると分かりやすいです。
🧩 基本構文
Remove-Job -Id ジョブID
ジョブIDまたは名前を指定して削除します。
実行前に Get-Job で対象を確認するのが基本です。
▶ 基本的な使い方(まずこれだけ)
🔹 ジョブを削除する
Remove-Job -Id 1
指定したジョブが削除されます。
エラーが表示されなければ、削除は完了しています。
🔹 削除後の確認
Get-Job
対象のジョブが一覧に表示されなければ、
正しく削除されています。
🛠 よく使われる指定例
🔹 ジョブ名を指定して削除する
Remove-Job -Name TestJob
名前付きジョブを使っている場合は、
名前指定のほうが直感的です。
🔹 完了したジョブをまとめて削除する
Get-Job | Where-Object State -eq 'Completed' | Remove-Job
完了済みのジョブだけを一括削除できます。
定期的な整理に便利です。
💼 実務でよく使う使用例(応用)
🔹 結果取得後にジョブを削除する
Get-Job | Receive-Job
Get-Job | Remove-Job
結果を受け取ってから削除する流れです。
ジョブ管理の基本パターンとしてよく使われます。
🔹 失敗したジョブだけ削除する
Get-Job | Where-Object State -eq 'Failed' | Remove-Job
- Get-Job で状態確認
- Receive-Job で結果取得
- Remove-Job で後片付け
🧩 よくある勘違い・つまずきポイント
- 削除すると結果は二度と取得できない
- 実行中(Running)のジョブは削除できない
- 別セッションのジョブは操作できない
- 大量削除時に対象を誤ると必要なジョブも消える
🔄 cmdとの違いについて
cmdには、
PowerShellジョブに相当する
標準的な管理・削除機能はありません。
Remove-Job は、
PowerShell独自の非同期処理管理を前提としたコマンドです。
⚠ エラー・うまく動かないときの確認ポイント
- 対象ジョブが存在しているか
- ジョブが実行中(Running)ではないか
- 必要な結果を受け取っているか
- PowerShellセッションが変わっていないか
🧠 注意点
Remove-Job はジョブ管理の最終処理です。
必ず結果取得の有無を確認してから実行する習慣をつけましょう。
📌 まとめ
- Remove-Job はジョブを完全に削除するコマンド
- Receive-Job で結果取得後に使うのが基本
- 定期的に整理すると管理しやすい
- ジョブ操作は「開始 → 確認 → 受信 → 停止 → 削除」が一連の流れ
🔎 PowerShellコマンドを探す
やりたいことからコマンドを探せます。
- ファイルを削除したい
- 一覧を表示したい
- 文字列を検索したい
- 条件で絞り込みたい
- エラーや実行できない原因を調べたい
- ジョブを削除したい
- バックグラウンド処理を整理したい
