我试图在命令行中为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'
答案 0 :(得分:621)
你想使用反引号而不是常规刻度:
sudo kill `sudo lsof -t -i:9001`
如果这不起作用,您还可以使用$()
进行命令插值:
sudo kill $(sudo lsof -t -i:9001)
答案 1 :(得分:193)
答案 2 :(得分:55)
FOR UBUNTU 1-找到使用专业人士的应用程序/进程,输入:
sudo netstat -lpn |grep :8080
然后按Enter键。
您将获得与此类似的输出
tcp6 0 0 :::8080 :::* LISTEN 6782/java
2-我有进程ID,即6782,现在这是使用端口8080的进程。
3-杀死进程,输入:kill 6782
kill 6782
答案 3 :(得分:30)
有一些过程没有使用普通的netstat命令显示,因此您必须使用sudo
进行检查。
sudo netstat -lpn |grep :8080
。系统运行的进程不显示PID,要获取此进程的PID,您必须使用sudo
然后使用端口8080
终止进程。您可能还必须在此处使用sudo
。因此,要使用sudo kill -9 PID
答案 4 :(得分:25)
在ubuntu终端中杀死端口的最佳方法是
fuser -k 9001/tcp
答案 5 :(得分:16)
使用killport命令:
sh killport 9001
要下载shell,您可以使用wget
:
wget https://cdn.rawgit.com/abdennour/miscs.sh/e0aac343/killport
答案 6 :(得分:14)
您也可以使用fuser来执行此操作(默认情况下发送SIGKILL):
output_d
答案 7 :(得分:9)
要终止ubuntu中的端口服务,请在终端中输入以下命令
在终端:
tidyverse
答案 8 :(得分:8)
要首先终止基于端口的进程,我们必须找出给定端口的相关pid并使用该pid终止,
在我的情况下,我想获取3000端口的pid(进程ID):
netstat -ltnp | grep -w '3000'
然后找到正在监听tcp的pid
tcp6 0 0 :::3000 :::* LISTEN 29972/node
您将获得pid 29972
要杀死此pid,请使用以下命令
kill -9 26493
用于基于端口的终止进程的伪代码
netstat -ltnp | grep -w 'PORT'
和
kill -9 PID
答案 9 :(得分:7)
使用此:
sudo kill -9 $(lsof -t -i:9001)
答案 10 :(得分:6)
要终止在端口号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).
了解更多内容,您可以访问我的blog
答案 11 :(得分:4)
杀死PORT:
sudo
对于显示流程ID非常重要。
$ sudo netstat -antlp | grep 45136
tcp 0 0 0.0.0.0:45136 0.0.0.0:* LISTEN **-**
$ kill -9 45136
答案 12 :(得分:3)
将此用于终止在端口号" 9001"
上运行的进程 kill $(lsof -t -i:9001)
答案 13 :(得分:3)
试试这个:
lsof -i :port
or
sudo kill $(sudo lsof -t -i:8000)
or
kill -9 <pid>
or
sh killport 8000
答案 14 :(得分:2)
如果我是你,我会用
fuser -k -n tcp PORT
kill -9 PID
答案 15 :(得分:2)
它给我一个错误OSError: [Errno 98] Address already in use
。使用以下方法解决了我在Ubuntu中的错误。(VERSION="18.04.4 LTS (Bionic Beaver)"
)
$ sudo netstat -lpn |grep :5000
tcp 0 0 0.0.0.0:5000 0.0.0.0:* LISTEN 25959/uwsgi
$ fuser -k -n tcp 5000
5000/tcp: 25959
希望它将对某人有所帮助!
答案 16 :(得分:2)
sudo热熔器-n tcp -k [端口号]
sudo lsof -t -i:[端口号]
答案 17 :(得分:2)
只需输入
fuser -k -n tcp 3000
在终端中,其中3000是您的端口号
答案 18 :(得分:1)
xargs
是一个非常有用的命令。
你可以像这样管道命令
lsof -t -i :9001 | xargs sudo kill
它的作用:
它获取第一个命令的输出,在本例中是在端口上运行的进程,并将其传递给 sudo kill
。
答案 19 :(得分:1)
它分为两个步骤:
ID为8689的杀死进程(可以不同)
fuser -n tcp 8080
#o/p 8080/tcp 8689
kill -9 8689
答案 20 :(得分:1)
sudo kill `sudo lsof -t -i:9001`
您不必添加-9
信号选项
答案 21 :(得分:0)
尝试sudo fuser PORT/tcp -k
将PORT
替换为您要终止的端口,例如80
答案 22 :(得分:0)
显示活动的TCP连接,计算机正在侦听的端口。
netstat -tupln
它将列出您与pid的所有连接。查找并复制pid并运行以下命令。确保在以下命令中将替换为实际ID。
kill -9 <copied pid>
-9用于强制终止连接。
答案 23 :(得分:0)
您可以使用节点工作
npm install freethenport -g
然后
node freethenport 9001
答案 24 :(得分:0)
kill -9 $(lsof -t -i:9001)
可用于终止进程。您可以使用任何端口号代替9001
答案 25 :(得分:0)
以下命令将杀死您正在运行的端口
echo "from=<test@test.ch> to=<test@test.ch>" | grep -E -o '([^=]*\s)[ ]*\1'
答案 26 :(得分:0)
sudo kill $(sudo lsof -t -i:1337)