実行中のジョブを停止するには、Stop-Jobを使用します。
例
$a = {
for($i = 1; $i -le 10; $i++){
Start-Sleep -s 1
}
Write-Host "ジョブAが完了しました。"
}
#ジョブの開始
Start-Job -Name "JobA" $a
Write-Host "開始"
Get-Date -Format G
#5秒待機
Start-Sleep -s 5
#ジョブの停止
Stop-Job -Name "JobA"
Write-Host "停止"
Get-Date -Format G
Write-Host ""
#ジョブ取得
Get-Job -Name "JobA"
Remove-Job -Name "JobA"
実行結果
Id Name PSJobTypeName State HasMoreData Location Command -- ---- ------------- ----- ----------- -------- ------- 21 JobA BackgroundJob Running True localhost ... 開始 2017/04/26 22:34:20 停止 2017/04/26 22:34:25 21 JobA BackgroundJob Stopped True localhost ... PS C:\work>"JobA"は、10秒かかるジョブですが、ジョブが開始されてから5秒後に停止しています。
スポンサーリンク