Перейти к содержимому
Управлять процессами в Windows можно не только через UI («Менеджер задач»), но и через командную строку. К тому же командная строка предоставляет больше контроля над данными действиями.
Для вывода списка запущенных процессов нужно ввести команду:
tasklist
Image Name PID Session Name Session# Mem Usage ========================= ======== ================ =========== ============ System Idle Process 0 Services 0 4 K System 4 Services 0 4 124 K smss.exe 348 Services 0 336 K csrss.exe 480 Services 0 2 780 K wininit.exe 552 Services 0 572 K csrss.exe 568 Console 1 9 260 K winlogon.exe 616 Console 1 2 736 K services.exe 640 Services 0 9 284 K lsass.exe 660 Services 0 16 464 K explorer.exe 27736 Console 1 125 660 K
«Убить» процесс можно как по его имени, так и по PID:
>Taskkill /IM explorer.exe /F
>Taskkill /PID 27736 /F
Флаг /F указывает, что завершить процесс нужно принудительно. Без данного флага, в некоторых случаях, процесс может не «убиться» (к примеру, это актуально как раз для процесса explorer.exe).
Sometimes when an application in Windows hangs, freezes and stops responding the only way to terminate it is to kill from the command-line.
The taskkill
command in Windows serves for terminating tasks by name or by process id (PID).
In this note i am showing how to find and kill a process by its name or by PID and how to identify a process by the listening port.
I am also showing how to troubleshoot “The process could not be terminated” and “Access denied” errors.
Cool Tip: Get the return code from the last command or application! Read more →
List all Windows processes and find the full name of a process to kill (case insensitive):
C:\> tasklist | findstr /I process_name
Kill the process by name:
C:\> taskkill /IM process_name.exe
Kill Process by PID
List all Windows processes and find the PID of a process to kill (case insensitive):
C:\> tasklist | findstr /I process_name
Kill the process by PID:
C:\> taskkill /PID process_id
Kill Process by Port
List all Windows processes listening on TCP and UDP ports and find the PID of a process running on a specific port:
C:\> netstat -ano | findstr :port
Find the name of a process by its PID:
C:\> tasklist /FI "pid eq process_id"
Kill the process by name or by PID:
C:\> taskkill /IM process_name.exe - or - C:\> taskkill /PID process_id
Cool Tip: Windows grep
command equivalent in CMD and PowerShell! Read more →
Troubleshooting
Kill the process forcefully in case of the following error:
ERROR: The process with PID XXX could not be terminated.
Reason: This process can only be terminated forcefully (with /F option).
C:\> taskkill /F /IM process_name.exe - or - C:\> taskkill /F /PID process_id
If you get an “Access is denied” error, you should open the command prompt as an administrator:
ERROR: The process with PID XXX could not be terminated.
Reason: Access is denied
To run the CMD as an administrator, press ⊞ Win keybutton to open the start menu, type in cmd
to search for the command prompt and press Ctrl + Shift + Enter to launch it as administrator.
Was it useful? Share this post with the world!
Multitasking with many apps and programs in the background can become difficult to manage and kill the processes running in the background using just the Task Manager or even with tools like Microsoft Process Explorer. However, another way to kill tasks and processes is from the command line in Windows.
However, you can open the Task Manager, right-click the process, and then click “End Task” to kill off the process. You can also terminate a specific process from the Details tab in the Task Manager. Sometimes you encounter issues with the Task Manager itself. For times like these, you may need to kill a process using the command line, which includes both the Command Prompt and Windows PowerShell.
In this article, we show you multiple ways to kill a process in Windows using Command Line.
This Page Covers
Why use the command line to terminate a process?
Although a normal user will not require killing processes using the command line, there are several use cases where command line tools are much better than their visual counterparts like the task manager. The following command line tools can be used in the following scenarios:
- Troubleshooting: Some processes are simply stubborn. They just stop responding and refuse to die. In such a condition, killing them forcefully using the command line is an easier and safer option.
- System administration: If you are a sysadmin, you should be a fan of command line utilities. These tools save a lot of work and time. You can run these commands remotely throughout your network to troubleshoot systems remotely.
- Script Automation: If you are a developer and need to start or stop processes in Windows, you will need these command line tools for automation.
- Virus prevention: If your system gets infected with viruses, it will simply not let you kill the compromised processes, as they will respawn upon kill. In this case, you can automate a monitoring process where the process is killed as soon as it starts.
There are several other use cases, but these are the most common ones.
How to Kill a Process from Command Prompt
You can kill the process in cmd using the taskkill command. However, you must either know its Process Identifier (PID) or the name of the process before you can end it.
To view and list the tasks and processes currently running on your computer, run the following command in an elevated Command Prompt:
Tasklist
Note either the name under the Image name column or the PID number of the task you want to kill. These will be used in the cmdlets to kill the respective process.
Once you have either the name or the PID of the task, use either of the following cmdlets to kill the process:
-
Kill task using process name in Command Prompt:
Replace [ProcessName] with the name of the process.
taskkill /IM "[ProcessName]" /F
Kill process from Command Prompt using process name -
Kill task using PID in Command Prompt:
Replace [PID] with the Process ID.
taskkill /F /PID [PID]
Kill process from Command Prompt using a process ID
If you are using earlier versions of Windows, like Windows 7, Windows Vista or even Windows XP, you can use tskill command, which is similar to taskkill but limited in functionality. You just need to provide the process ID to kill a task using tskill command:
tskill process-id
Replace process-id with the actual process ID. For example,
tskill 1234
How to Kill a Process from Windows PowerShell
Similar to the Command Prompt, you can also kill processes using PowerShell. But first, we must get the name or the process ID for the process to kill.
To obtain a list of the running processes in PowerShell, run the following command in PowerShell with elevated privileges:
Get-Process
From here, note down the process name or the PID (in the ID column) of the process that you want to kill, and then use it in the following commands:
Note: Unlike the Command Prompt, Windows PowerShell shows no output once a process is killed.
-
Kill task using process name in PowerShell:
Replace [ProcessName] with the name of the process.
Stop-Process -Name "[ProcessName]" -Force
Kill process from PowerShell using process name -
Kill task using PID in PowerShell:
Replace [PID] with the Process ID.
Stop-Process -ID [PID] -Force
Kill process from PowerShell using a process ID
How to Kill a Process using WMIC
Windows Management Instrumentation Command-Line (WMIC) is a useful command line tool to perform administrative tasks especially for sysadmins and power users. You can terminate the process using wmic command.
Please note all the below mentioned commands will only work if you open Command Prompt, PowerShell or Terminal as an administrator.
wmic process where "ProcessId='process-id'" delete
Replace process-id with the actual process ID. For example,
wmic process where "ProcessId='1234'" delete
You can also terminate the process using its name:
wmic process where "name='process-name'" delete
Replace process-name with the actual process name. For example,
wmic process where "name='Skype.exe'" delete
If there are multiple processes by the same name, this command will kill all of them. For example, the above mentioned command will delete all instances with the name Skype.exe.
How to Kill a Process using SysInternals PsKills
PsKill is a tiny tool that comes with the PsTools Suite by SysInternals. This is a command-line tool used to kill processes, both locally and remotely on other computers on the network.
Although it was designed for WindowsNT and Windows 2000 that did not include the other command-line tools (Killtask and Stop-Process), PsKill can still be used to end processes.
Learn how to manage processes and services on remote computers.
Use the following steps to download and use PsKill to kill tasks using the command line on a Windows computer:
-
Start by downloading PsTools.
Download PSTools -
Extract the contents of the PsTool file.
Extract PsTools -
Launch an elevated Command Prompt and then use the
CD
cmdlet to change your directory to the extracted PsTools folder.CD [PathToPsTools]
Change directory to PsTools folder -
Run the following command to list all the running processes:
PsList
List all running processes using PsList Note down the name of the process that you want to kill.
-
Now use the following command to kill a process using its name:
PsKill.exe [ProcessName]
Kill process using PsKill
As you can see from the image above, the respective process will be killed, and the associated service or program will be terminated.
Ending Thoughts
Even without the use of the Task Manager, there are multiple ways of killing a task or a process directly from the command line. You can even use these commands in scripts to end a Windows process.
On top of that, you can choose whether to kill a process using its name or its PID. Either way, Command Prompt and Windows PowerShell can be used with both native and external commands for this purpose. Not only that, but you can also use these commands in Windows Terminal for the same purpose.
If you are a sysadmin who wants quick and convenient methods to kill running processes, the given command line methods just might be the most convenient way of accomplishing it.
We use the taskkill
command to terminate applications and processes in the Windows command prompt. Running taskkill
is the same as using the End task button in the Windows Task Manager.
With taskkill
, we kill one or more processes based on the process ID (PID) or name (image name). The syntax of this command is as follows:
taskkill /pid PID
taskkill /im name
You can use the tasklist command to find the PID or image name of a Windows process.
The /F
option tells Windows to force kill the process:
taskkill /f /im notepad.exe
Kill a Process by PID
In the following example, we run the taskkill
command to terminate a process with a PID of 1000:
taskkill /f /pid 3688
The multiple processes can be terminated at once, as shown in the following example:
taskkill /pid 3688 /pid 4248 /pid 4258
Kill a Process by Name
To kill a process by its name, we use the /IM
option. In the following example, we run the taskkill
command to terminate the notepad.exe
process:
taskkill /im notepad.exe
The /t
option tells Windows to terminate the specified process and all child processes. In the following example, we force kill Microsoft Edge and its child processes:
taskkill /f /t /im msedge.exe
Command Options
/S | Specifies the IP Address or name of the remote system to connect to. |
/U | Specifies the name of the Windows user under which the command should execute. |
/P | Password for the user. Prompts for input if omitted. |
/FI | This option is to apply filters (see examples below). |
/PID | Specifies the PID of the process to be terminated. |
/IM | Specifies the image name of the process to be terminated. |
/T | Terminates the specified process and its child processes (end all tasks). |
/F | Forcefully kill a process. |
Examples
Terminate a process with a PID of 4000:
taskkill /pid 4000
Terminate spoolsv.exe
(which is the Print Spooler service on Windows):
taskkill /im spoolsv.exe
Using /f
and /t
options to forcefully terminate the entire process tree of the Microsoft Edge browser:
taskkill /f /t /im msedge.exe
Force kill any process that starts with the name note:
taskkill /f /t /im note*
In the following example, we terminate all processes that are not responding by using a filter:
taskkill /f /fi "status eq not responding"
In the above example, eq
stands for equal. You can use the following filters with the /fi
option.
Run taskkill
command on a remote computer:
taskkill /s 192.168.1.100 /u robst /pid 5936
In the above example, the process with PID 5936 will be terminated on a remote computer with an IP address of 192.168.1.100
.
Note that the Windows Firewall must be configured on the remote computer to allow the taskkill
command. Click the link below for instructions on how to do it.
How to allow tasklist and taskkill commands from Windows Firewall
All right, here’s the end of this tutorial. While working on the CMD, you can run taskkill /?
to display the help page, command options, and filters of the tasklist
command.
The PowerShell equivalent to the taskkill
is the Stop-Process
cmdlet. But you can always use taskkill
in PowerShell as well.
Обычно «убить» процесс в Windows 10 можно с помощью диспетчера задач, но в некоторых случаях эта возможность блокируется вирусами или некоторыми программами. Однако, в этих случаях можно попробовать закрыть его через командную строку или PowerShell.
Используя командную строку
Работа диспетчера задач может быть реализована с помощью инструментов командной строки: Tasklist (список задач) и Taskkill (утилита Taskkill).
- Во-первых, нам нужно найти идентификатор процесса с помощью Tasklist
- Во-вторых, мы убиваем программу, используя Taskskill.
Откройте командную строку с правами администратора, введя cmd в строке Выполнить (Win + R) и нажав Shift + Enter.
Для просмотра процессов введите следующую команду и нажмите Enter:
Taskview /fo table
Обратите внимание на идентификатор процесса, указанный в колонке Process ID.
Вы можете также прибить программу, используя точное имя.
Чтобы убить процесс по его имени, введите команду:
TASKKILL /IM "process name" /F
Так для Chrome у программы будет имя chrome.exe.
Введите команду и нажмите Enter, чтобы убить Chrome.
Taskkill /IM chrome.exe /F
Ключ /F используется для принудительной остановки процесса.
Чтобы убить процесс по его PID, введите команду:
TASKKILL /F /PID pid_number
Чтобы убить несколько процессов одновременно, запустите вышеприведенную команду с PID всех процессов через пробел.
TASKKILL /PID 2536 /PID 3316 /F
Используя PowerShell
Чтобы просмотреть список запущенных процессов, выполните следующую команду:
Get-Process
Чтобы убить процесс, используя его имя, выполните следующую команду:
Stop-Process -Name "ProcessName" -Force
Чтобы убить процесс, используя его PID, выполните следующую команду:
Stop-Process -ID PID -Force
Спасибо, что читаете! На данный момент большинство моих заметок, статей и подборок выходит в telegram канале «Левашов». Обязательно подписывайтесь, чтобы не пропустить новости мира ИТ, полезные инструкции и нужные сервисы.
Респект за пост! Спасибо за работу!
Хотите больше постов в блоге? Подборок софта и сервисов, а также обзоры на гаджеты? Сейчас, чтобы писать регулярно и радовать вас большими обзорами, мне требуется помощь. Чтобы поддерживать сайт на регулярной основе, вы можете оформить подписку на российском сервисе Boosty. Или воспользоваться ЮMoney (бывшие Яндекс Деньги) для разовой поддержки:
Заранее спасибо! Все собранные средства будут пущены на развитие сайта. Поддержка проекта является подарком владельцу сайта.