"Remove-Job" Cmdlet in Windows PowerShell

Q

How to use "Remove-Job" cmdlet in Windows PowerShell?

✍: FYIcenter.com

A

You can use the "Remove-Job" cmdlet to remove an stopped or completed background job by using the "-id n" or "-name xxx" to specify the background job.

If the background job is still running, you can use the "-Force" option to remove it.

Here is an example of using the "Remove-Job" cmdlet:

PS C:\fyicenter> start-job {for($i=0; $i -lt 100; $i++) {write-host "$i sec"; sleep 1} }
Id     Name            PSJobTypeName   State         Command
--     ----            -------------   -----         -------
18     Job18           BackgroundJob   Running       for($i=0; $i -lt 100...


PS C:\fyicenter> get-job
Id     Name            PSJobTypeName   State         Command
--     ----            -------------   -----         -------
2      Job2            BackgroundJob   Completed     get-process
4      Job4            BackgroundJob   Completed     $now = get-date
18     Job18           BackgroundJob   Running       for($i=0; $i -lt 100...

PS C:\fyicenter> remove-job 18
remove-job : The command cannot remove the job with the job ID 18 
because the job is not finished. To remove the job, first stop the 
job, or use the Force parameter. Parameter name: SessionId
At line:1 char:1
+ remove-job 18
+ ~~~~~~~~~~~~~
 + CategoryInfo          : InvalidOperation: 
   (System.Manageme...n.PSRemotingJob:PSRemotingJob) [Remove-Job], Argume ntException
 + FullyQualifiedErrorId : JobObjectNotFinishedCannotBeRemoved,
   Microsoft.PowerShell.Commands.RemoveJobCommand

PS C:\fyicenter> remove-job 18 -force

 

Managing Windows PowerShell Background Jobs

⇒⇒Windows PowerShell Tutorials

2016-10-08, 497👍, 0💬