To kill a process, you can use the command Stop-Process.

Or you can try Ctrl + Break shortcut.

Answer from bluray on Stack Overflow
🌐
Microsoft Learn
learn.microsoft.com › en-us › powershell › module › microsoft.powershell.management › stop-process
Stop-Process (Microsoft.PowerShell.Management) - PowerShell | Microsoft Learn
The Stop-Process cmdlet stops one or more running processes. You can specify a process by process name or process ID (PID), or pass a process object to Stop-Process. Stop-Process works only on processes running on the local computer.
Discussions

Kill process of a different user remotely
Hi there, I’m just learning the basics of powershell and I wanted to resolve the following issue: I need to kill a specific task that is run on a remote computer by all users that are not currently logged in. I want to be able to run the command on a Windows 7 machine. More on forums.powershell.org
🌐 forums.powershell.org
0
0
August 25, 2016
powershell - How do I kill a processes running a given executable? - Stack Overflow
I want to kill a job. First, I need it's process Id, so I execute: get-process And I get a boatload of processes. OK, I just want one particular process, so I use: get-process | select-string -p... More on stackoverflow.com
🌐 stackoverflow.com
Powershell task kill
I have several meeting rooms setup to empty the Outlook mailbox when its closed. So im trying to have a powershell script close Outlook after office hours but if you PS C:> Stop-Process -Name "outlook" it just kills outlook where as if… More on learn.microsoft.com
🌐 learn.microsoft.com
4
0
February 7, 2022
Kill a process after it runs for X amount of time
The win32_service WMI class includes process information like the processId. The process information returned by Get-Process includes a starttime. More on reddit.com
🌐 r/PowerShell
9
5
October 16, 2020
People also ask

How do I stop a PowerShell command from running?

You can interrupt and stop a PowerShell command while it is running by pressing Control-C. A script can be stopped with the command exit. This will also close the PowerShell console.

🌐
comparitech.com
comparitech.com › home › net admin › tutorial: powershell kill process command
PowerShell Kill Process Command: Step-by-Step Tutorial
How do I kill Windows processes from the command line?

At the command line, you can terminate a Windows process with the command taskkill. To use this command, you need to know its process ID (PID). You can get a list of all running tasks with the command tasklist. Once you know the PID, use the taskkill command in this manner: taskkill /PID /F. Type in the process ID without quotes instead of .

🌐
comparitech.com
comparitech.com › home › net admin › tutorial: powershell kill process command
PowerShell Kill Process Command: Step-by-Step Tutorial
What is the kill PID command?

The kill command is used on Linux to terminate a running process. The format is just kill followed by the process ID. You can get a list of running processes by using the top command. The kill command doesn’t work in Windows – use taskkill instead.

🌐
comparitech.com
comparitech.com › home › net admin › tutorial: powershell kill process command
PowerShell Kill Process Command: Step-by-Step Tutorial
🌐
Comparitech
comparitech.com › home › net admin › tutorial: powershell kill process command
PowerShell Kill Process Command: Step-by-Step Tutorial
November 11, 2024 - Once you know the PID, use the taskkill command in this manner: taskkill /PID <PID> /F. Type in the process ID without quotes instead of <PID>. The kill command is used on Linux to terminate a running process.
🌐
PDQ
pdq.com › blog › what-is-the-powershell-equivalent-of-taskkill
What is the PowerShell equivalent of taskkill? | PDQ
February 12, 2026 - Use the PowerShell Stop-Process command to kill frozen apps and scripts with precision. Learn the PowerShell equivalent of taskkill with examples and tips.
Find elsewhere
🌐
Dzhavat Ushev
dzhavat.github.io › 2020 › 04 › 09 › powershell-script-to-kill-a-process-on-windows.html
PowerShell script to kill a process on Windows | Dzhavat Ushev
taskkill /pid $pidNumber /f · The only thing left now is to kill the process using the PID number. Kill port script · Phew, that was a lot! I really enjoyed taking this experiment. Before starting it, I felt intimidated by the thought of writing a PowerShell script.
🌐
PowerShell Forums
forums.powershell.org › powershell help
Kill process of a different user remotely - PowerShell Help - PowerShell Forums
August 25, 2016 - Hi there, I’m just learning the basics of powershell and I wanted to resolve the following issue: I need to kill a specific task that is run on a remote computer by all users that are not currently logged in. I want t…
🌐
Marc Nuri
blog.marcnuri.com › home › windows: how to kill a process from the command line
Windows: How to kill a process from the command line - Marc Nuri
October 31, 2023 - In this post, I've shown you the possible ways to kill a process from the command line in Windows. Using the taskkill command from cmd or the Stop-Process cmdlet from powershell.
🌐
ITPRC
itprc.com › home › network tools
How To Use PowerShell To Kill Processes - Step-by-Step Guide
March 12, 2021 - We’ll use this process ID to ... the [Windows Key] + [R] and then typing powershell in the run box. Type tasklist in the PowerShell window....
🌐
Sacha's Blog
sachabarbs.wordpress.com › 2014 › 10 › 22 › powershell-killing-all-processes-of-name
Powershell : Killing all processes of name | Sacha's Blog
October 22, 2014 - One of thing I really like about PowerShell is the ability to pipe things from one CmdLet to another. Imagine you want to get all instances of the the running process “notepad” and kill them. ... Like I say this is ridiculously simple, and hardy worthy of a blog post at all, but I aim to build a set of common tasks posts, and this will just form one of those.
Top answer
1 of 2
8

Select-String is probably not the hammer you wanna use for this particular nail (see below) :-)

Get-Process has a -Name parameter that takes a wildcard:

Get-Process -Name nginx
# or
Get-Process -Name *nginx*

To kill the process, either call Kill() directly on the object:

$nginxProcess = Get-Process nginx |Select -First 1
$nginxProcess.Kill()

... or simply pipe the process instances to Stop-Process:

Get-Process -Name nginx |Stop-Process

As you can see, we never actually need to locate or pass the process id - the Process object already has that information embedded in it, and the *-Process cmdlets are designed to work in concert - PowerShell is all about command composition, and this is an example of it.

That being said, Stop-Process is also perfectly capable of killing processes by name alone:

Stop-Process -Name nginx

How did I know the *-Process cmdlets had a -Name parameter?

Apart from reading the help files and documentation (I get it, I don't want to read anything either unless I absolutely have to ;-)), a quick way to learn about the parameters exposed by a cmdlet is by running Get-Command <commandName> -Syntax:

PS ~> Get-Command Stop-Process -Syntax

Stop-Process [-Id] <int[]> [-PassThru] [-Force] [-WhatIf] [-Confirm] [<CommonParameters>]

Stop-Process -Name <string[]> [-PassThru] [-Force] [-WhatIf] [-Confirm] [<CommonParameters>]

Stop-Process [-InputObject] <Process[]> [-PassThru] [-Force] [-WhatIf] [-Confirm] [<CommonParameters>]

The output shows us 3 distinct "parameter sets" (combinations of parameter input accepted by the command), and the required and optional arguments we can pass to it.


What's wrong with Select-String?

The Select-String cmdlet is the PowerShell cognate to grep - it takes some input, and performs regular expression matching against it based on whatever pattern you give it.

But grep is only useful when you're operating on strings - and as you've already found, Get-Process returns structured .NET objects, not flat strings.

Instead, the PowerShell-idiomatic approach is to filter the data, using the Where-Object cmdlet:

Get-Process | Where-Object Name -like '*nginx*'

Here, we instruct Where-Object to only let through object that have a Name property, the value of which must satisfy the wildcard pattern *nginx*.

Where-Object also supports arbitrary filter expressions, by accepting a scriptblock - PowerShell will assign the current pipeline object being evaluated to $_ (and $PSItem):

Get-Process | Where-Object { $_.Name -like '*nginx*' }

... which you can extend to whatever degree you need:

# Only let them through if a specific user is executing
Get-Process | Where-Object { $_.Name -like '*nginx*' -and $env:USERNAME -ne 'Quarkly'}
2 of 2
1

Note: PowerShell must be run as Administrator in order to execute these commands.

Kill a process with a known PID:

Syntax:

Stop-Process -Force -Id <pid>

Example:

Stop-Process -Force -Id 1234

Kill a process with a known name:

Syntax:

Stop-Process -Force -Name <name>

Example:

Stop-Process -Force -Name Taskmgr

Kill a process with a name wildcard search pattern

Syntax:

Get-Process -Name <pattern> | Stop-Process -Force

Example:

Get-Process -Name *skmg* | Stop-Process -Force
🌐
Microsoft Learn
learn.microsoft.com › en-us › answers › questions › 3834366 › powershell-task-kill
Powershell task kill - Microsoft Q&A
February 7, 2022 - So im trying to have a powershell script close Outlook after office hours but if you PS C:&gt; Stop-Process -Name "outlook" it just kills outlook where as if you manually close it a prompt comes up with an OK box saying inbox will be emptied are you ok with this or something along those lines
🌐
SharePoint Diary
sharepointdiary.com › sharepoint diary › powershell › how to kill a process in powershell with stop-process?
How to Kill a Process in PowerShell with Stop-Process? - SharePoint Diary
October 22, 2025 - Type the PowerShell command Get-Process to view a list of running processes and their process IDs · Identify the process ID of the process that you want to kill · Type Stop-Process -Id "Process ID" to kill the process · Replace with the process ...
🌐
Java2Blog
java2blog.com › home › powershell › powershell kill process by name
PowerShell Kill Process by Name [4 Ways] - Java2Blog
June 20, 2023 - Use the Stop-Process cmdlet to kill a process by name in PowerShell. ... The Stop-Process command stops a process by its name. The -Name parameter specifies the name of the process to stop.