Как я могу удалить текущий процесс / приложение, которое уже назначено порту?
Например: localhost:8080
Шаг 1:
Откройте cmd.exe (примечание: вам может потребоваться запустить его как администратор, но это не всегда необходимо), а затем выполните следующую команду:
netstat -ano | findstr :PORT_NUMBER
(Замените PORT_NUMBER на номер порта, который вы хотите, но оставьте двоеточие)
Область, обведенная красным, показывает PID (идентификатор процесса). Найдите PID процесса, который использует нужный порт.
Шаг 2:
Далее выполните следующую команду:
taskkill /PID PID /F
(На этот раз без двоеточия)
Наконец, вы можете проверить, была ли операция успешной или нет, повторно выполнив команду в «Шаге 1». Если все прошло успешно, вы не увидите больше результатов поиска по этому номеру порта.
taskkill //PID 12552 //F
taskkill /PID PORT_NUMBER /F
Шаг 1 (то же самое в принятом ответе, написанном KavinduWije ):
Измените на шаге 2:
Примечание :
taskkill
не работает в некоторых терминалах git bashисточник
С помощью стандартных инструментов Windows 10:
Откройте Windows PowerShell от имени администратора
Найти PID (ProcessID) для порта 8080:
Убить зомби процесс:
где "77777" - ваш PID
источник
set /p port="Enter port: "
-> Порт вводаFOR /F "tokens=5" %%T IN ('netstat -aon ^| findstr %port% ') DO ( SET /A ProcessId=%%T) &GOTO SkipLine
:SkipLine
-> Извлекает PID в переменнуюtaskkill /f /pid %ProcessId%
-> Убивает задачуcmd /k
-> Держит окно открытымЕсли вы используете GitBash
Шаг первый:
Шаг второй:
(
/F
принудительно завершает процесс)источник
В Windows PowerShell версии 1 или новее для остановки процесса на порту 3000 введите:
Как подсказывает @morganpdx, здесь больше PowerShell-иш, лучшая версия:
источник
'Stop-Process' is not recognized as an internal or external command,
Stop-Process -Id (Get-NetTCPConnection -LocalPort 3000).OwningProcess -Force
Для использования в командной строке:
Для использования в bat-файле:
источник
Если вы уже знаете номер порта, возможно, будет достаточно отправить сигнал завершения работы программы (SIGTERM):
источник
lsof -nt -i4TCP:9001
.Для пользователей Windows вы можете использовать инструмент CurrPorts для простого уничтожения используемых портов:
источник
Я запускал zookeeper в Windows и не смог остановить ZooKeeper, работающий на порте 2181, используя zookeeper-stop.sh, поэтому попробовал этот метод двойной косой черты "//" для taskkill. Это сработало
источник
Если вы используете Windows Terminal, то процесс убийства может быть немного менее утомительным. Я использую терминал Windows и
kill PID
отлично работаю, чтобы убить процессы в порту, так как новый терминал Windows поддерживает определенные команды bash. Например:kill 13300
Итак, весь процесс будет выглядеть так:
netstat -ano | findstr :PORT
kill PID
Например:
Посмотрите, когда я набрал первую команду для вывода списка процессов в порту, он вернулся пустым. Это означает, что все процессы сейчас убиты.
источник
kill
. Я напишу здесь, если найду.Вы можете сделать, запустив файл bat:
источник
Если вы хотите сделать это с помощью Python: проверьте, возможно ли в python завершить процесс, который прослушивает определенный порт, например 8080?
Ответ от Smunk работает хорошо. Я повторяю его код здесь:
источник
Однолинейное решение с использованием GitBash :
Замените 8080 на порт, который слушает ваш сервер.
Если вам нужно использовать его часто, попробуйте добавить к вашей
~/.bashrc
функции:и просто беги
источник
Этого можно избежать, просто перезапустив IIS с помощью следующей команды:
источник