Как убить процесс в настоящее время с помощью порта на localhost в windows?



Как удалить текущий процесс/приложение, которое уже назначено к порту ?
(Пример: - localhost: 8080)

835   8  

8 ответов:

Шаг 1

запуск командной строки от имени администратора. Затем выполните приведенную ниже команду упоминания. введите свой номер порта в yourPortNumber

netstat-ano | findstr:yourPortNumber

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

Шаг 2

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

taskkill / PID typeyourPIDhere /F

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

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

netstat -ano | findstr :yourPortNumber

измените Шаг 2 на:

tskill typeyourPIDhere 

С taskkill не работает в какой-то команде git bash

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

Шаг первый:

netstat -ano | findstr :8080

Шаг второй:

taskkill /PID typeyourPIDhere /F 

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

на Windows PowerShell Версия 1 или более поздняя для остановки процесса на порту 3000 тип:

Stop-Process (, (netstat-ano / findstr :3000).split () | foreach {$[$.длина-1]}) -силу


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

Stop-Process-Id (Get-NetTCPConnection-LocalPort 3000).OwningProcess-Force

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

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

Если вы хотите сделать это с помощью python: проверьте возможно ли в 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 

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

IISRESET

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

Comments

    Ничего не найдено.