Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

Starting Situation

  • A number of tasks might be running in JobScheduler that should immediately be killed.
  • This could happen
    • due to some misbehaving scripts that cause a large number of job starts.
    • due to a business requirement for an emergeny stop.

Use

...

Cases

Kill all tasks

Code Block
languagepowershell
C:\PS> Get-TaskJobSchedulerTask | Stop-TaskJobSchedulerTask
  • The Get-TaskJobSchedulerTask cmdlet retrieves all running tasks.
  • The list of tasks is piped to the Stop-TaskJobSchedulerTask cmdlet.
  • Depending on the system load the killing of tasks might take some seconds. Repeatedly executing the Get-Task cmdlet should prove that no further tasks are running.

Kill tasks for any jobs that are located in a folder

Code Block
languagepowershell
C:\PS> Get-JobJobSchedulerJob /some_folder/some_subfolder | Get-TaskJobSchedulerTask | Stop-TaskJobSchedulerTask
  • The Get-JobJobSchedulerJob cmdlet retrieves jobs starting from the specified directory. Any subfolders of that directory are included unless the -NoSubfolders parameter is specified.
  • The Get-TaskJobSchedulerTask cmdlet retrieves all running tasks for the list of jobs.
  • The list of tasks is piped to the Stop-TaskJobSchedulerTask cmdlet.

Kill tasks for any jobs of a job chain

Code Block
languagepowershell
C:\PS> Get-JobChainJobSchedulerJobChain -JobChain /some_folder/some_job_chain | Get-JobJobSchedulerJob | Get-TaskJobSchedulerTask | Stop-TaskJobSchedulerTask

 

 

...

See also

  • The Stop-Task cmdlet supports a number of actions to kill (sending SIGKILL) and to terminate (sending SIGTERM) signals to processes, For details see How to Terminate Tasks.