Как убить процесс на порту на ubuntu
Я пытаюсь убить процесс в командной строке для определенного порта в ubuntu.
если я запускаю эту команду я получаю порт:
sudo lsof -t -i:9001
так...теперь я хочу бежать:
sudo kill 'sudo lsof -t -i:9001'
Я получаю это сообщение об ошибке:
ERROR: garbage process ID "lsof -t -i:9001".
Usage:
kill pid ... Send SIGTERM to every process listed.
kill signal pid ... Send a signal to every process listed.
kill -s signal pid ... Send a signal to every process listed.
kill -l List all signal names.
kill -L List all signal names in a nice table.
kill -l signal Convert between signal numbers and names.
пробовал sudo kill 'lsof -t -i:9001'
а также
17 ответов
вы хотите использовать backtick не обычный ТИК:
sudo kill `sudo lsof -t -i:9001`
Если это не работает, вы также можете использовать $()
для команды интерполяции:
sudo kill $(sudo lsof -t -i:9001)
ДЛЯ UBUNTU 1-найдите, какое приложение / процесс использует pro, введите:
sudo netstat -lpn |grep :8080
и нажмите Enter.
вы получите выход, подобный этому
tcp6 0 0 :::8080 :::* LISTEN 6782/java
2-у меня есть идентификатор процесса, который составляет 6782, теперь это процесс, который использует порт 8080.
3 - убить процесс, тип: убить 6782
kill 6782
есть некоторый процесс, который не отображается с помощью обычной команды netstat, поэтому вы должны проверить его с помощью sudo
.
Do sudo netstat -lpn |grep :8080
. Процесс, запущенный системой, не показывает PID, чтобы получить PID этого процесса, вам придется запустить его с помощью sudo
а затем killl процесс с помощью порта 8080
. Возможно, вам придется использовать Как хорошо. Поэтому, чтобы убить этот процесс, используйте sudo kill -9 PID
использовать killport команда :
sh killport 9001
для загрузки оболочки ,вы можете использовать wget
:
wget https://cdn.rawgit.com/abdennour/miscs.sh/e0aac343/killport
вы также можете использовать fuser для этого (отправляет SIGKILL по умолчанию):
sudo fuser -k 9001/tcp
убить порт:
sudo
важно показать идентификатор процесса.
$ sudo netstat -antlp | grep 45136
tcp 0 0 0.0.0.0:45136 0.0.0.0:* LISTEN **-**
$ kill -9 45136
убить процесс, запущенный на порт 9001
sudo kill -9 $(sudo lsof -t -i:9001)
lsof - list of files(Also used for to list related processes)
-t - show only process ID
-i - show only internet connections related process
:9001 - show only processes in this port number
kill - command to kill the process
-9 - forcefully
sudo - command to ask admin privilege(user id and password).
для больше, вы можете посетить мой блог
используйте это для процесса убийства, который работает на номер порта "9001"
kill $(lsof -t -i:9001)
попробуйте это:
lsof -i :port
or
sudo kill $(sudo lsof -t -i:8000)
or
kill -9 <pid>
or
sh killport 8000
используйте команду
netstat -plten |grep java
используется grep java, поскольку tomcat использует java в качестве своих процессов.
он покажет список процессов с номером порта и идентификатором процесса
tcp6 0 0 :::8080 :::* LISTEN
1000 30070621 16085/java
номер перед / java является идентификатором процесса. Теперь используйте команду kill, чтобы убить процесс
kill -9 16085
-9 подразумевает, что процесс будет убит насильственно.
чтобы убить процесс на основе порта сначала мы должны узнать соответствующий pid для данного порта и убить, используя этот pid,
в моем случае я хотел получить pid (идентификатор процесса) порта 3000:
netstat -ltnp | grep -w '3000'
затем найдите pid, который прослушивает tcp
tcp6 0 0 :::3000 :::* LISTEN 29972/node
вы получите pid 29972
чтобы убить этот pid, используйте ниже команду
kill -9 26493
псевдо-код для процесса убийства на основе порт
netstat -ltnp | grep -w 'PORT'
и
kill -9 PID
его два шага процесса:
- знать идентификатор процесса на порту нет. 8080 (может быть любой)
-
убить процесс этого id 8689 (может быть другим)
fuser -n tcp 8080 #o/p 8080/tcp 8689 kill -9 8689