Подтвердить что ты не робот

Как убить процесс, который в настоящее время использует порт на localhost в Windows?

Как удалить текущий процесс/приложение, которое уже назначено порту?

Например: localhost:8080

4b9b3361

Ответ 1

Шаг 1

Запустите командную строку в качестве администратора. Затем запустите следующую команду. введите номер своего порта в yourPortNumber

netstat -ano | findstr: yourPortNumber

Окрашенная область с красным цветом показывает идентификатор PID (идентификатор процесса)

Шаг 2

Затем вы выполните эту команду после идентификации PID.

taskkill/PID typeyourPIDhere/F

P.S. Выполните первую команду еще раз, чтобы проверить, доступен ли процесс или нет. Вы получите пустую строку, если процесс успешно завершен.

Ответ 2

Шаг 1 (то же самое в принятом ответе, написанном KavinduWije):

netstat -ano | findstr :yourPortNumber

Изменить шаг 2 на:

tskill typeyourPIDhere 

Это, так как taskkill не работает в команде git bash

Ответ 3

Если вы используете GitBash

Первый шаг:

netstat -ano | findstr :8080

Шаг второй:

taskkill /PID typeyourPIDhere /F 

(/F принудительно завершает процесс)

Ответ 4

с инструментами по умолчанию WINDOWS10:

Шаг 1: Найти PID (ProcessID) для порта 8080:

netstat -aon | findstr 8080

TCP 0.0.0.0:8080 0.0.0.0:0 LISTEN 11999

Шаг 2:  Убить зомби-процесс:

taskkill /f /pid 11999

где "11999" - ваш PID

  • Иногда вам нужно открыть Windows PowerShell и администратор

Ответ 5

В Windows PowerShell версии 1 или новее, чтобы остановить процесс на порту 3000 типа:

Stop-Process (, (netstat -ano | findstr: 3000).split() | foreach {$ [$. Length-1]}) -Force


Как предложил @morganpdx здесь больше PowerShell-ish, лучшая версия:

Стоп-процесс -Id (Get-NetTCPConnection -LocalPort 3000).OwningProcess -Force

Ответ 6

Для использования в командной строке:

for /f "tokens=5" %a in ('netstat -aon ^| find ":8080" ^| find "LISTENING"') do taskkill /f /pid %a

Для использования в bat файле:

for /f "tokens=5" %%a in ('netstat -aon ^| find ":8080" ^| find "LISTENING"') do taskkill /f /pid %%a

Ответ 7

Если вы уже знаете номер порта, вероятно, будет достаточно отправить сигнал завершения работы программы (SIGTERM):

kill $(lsof -t -i :PORT_NUMBER)

Ответ 8

Для пользователей Windows вы можете использовать инструмент CurrPorts для простого уничтожения используемых портов enter image description here

Ответ 9

Я запускал zookeeper @windows, не смог остановить запуск zookeeper на порте 2181 с использованием zookeeper-stop.sh, поэтому попробовал этот двойной слэш "//" метод taskkill. Это сработало

     1. netstat -ano | findstr :2181
       TCP    0.0.0.0:2181           0.0.0.0:0              LISTENING       8876
       TCP    [::]:2181              [::]:0                 LISTENING       8876

     2.taskkill //PID 8876 //F
       SUCCESS: The process with PID 8876 has been terminated.

Ответ 10

Если вы хотите сделать это с помощью python: проверьте Возможно ли в процессе уничтожения питона, который работает на определенном порту, например 8080? Ответ от Smunk работает красиво. Я повторяю его код здесь:

from psutil import process_iter
from signal import SIGTERM # or SIGKILL

for proc in process_iter():
    for conns in proc.connections(kind='inet'):
        if conns.laddr.port == 8080:
            proc.send_signal(SIGTERM) # or SIGKILL
            continue 

Ответ 11

Вы можете сделать, запустив файл bat:

@ECHO OFF                                                                              
FOR /F "tokens=5" %%T IN ('netstat -a -n -o ^| findstr "9797" ') DO (
SET /A ProcessId=%%T) &GOTO SkipLine                                                   
:SkipLine                                                                              
echo ProcessId to kill = %ProcessId%
taskkill /f /pid %ProcessId%
PAUSE

Ответ 12

Мы можем избежать этого, просто перезапустив IIS, используя следующую команду.

IISRESET

Ответ 13

Работает! Но нам нужно открыть командную строку с правами администратора.

Ответ 14

я был убит 1 порт из TaskKill в Windows, мы можем восстановить этот порт? и могу ли я найти какой порт убит???? @Jvkbrdid @gmail.com