我试图在命令行中为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.

我也尝试过杀“lsof-t-I:9001”


您希望使用倒勾,而不是常规勾号:

sudo kill -9 `sudo lsof -t -i:9001`

如果这不起作用,还可以使用$()进行命令插值:

sudo kill -9 $(sudo lsof -t -i:9001)

你可以使用

fuser -n tcp -k 9001 

在维基百科中查看更多详细信息


使用killport命令:

sh killport 9001 

要下载shell,可以使用wget:

wget https://cdn.rawgit.com/abdennour/miscs.sh/e0aac343/killport

有些进程没有使用正常的netstat命令显示,因此您必须使用sudo检查它。

执行sudo netstat-lpn | grep:8080。系统运行的进程不显示PID,要获取此进程的PID,必须使用sudo运行它

然后使用端口8080终止进程。你可能也必须在这里使用sudo。因此,要终止此进程,请使用sudo kill-9 PID


对于UBUNTU1-查找使用pro的应用程序/流程,键入:

sudo netstat -lpn |grep :8080

然后按Enter键。

您将得到与此类似的输出

tcp6       0      0 :::8080                 :::*                    LISTEN      6782/java

2-我得到了进程Id,即6782,现在这是使用端口8080的进程。

3-终止进程,类型:Kill-p 6782

kill -9 6782

使用此项:

sudo kill -9 $(lsof -t -i:9001)

终止端口:

sudo对于显示进程id很重要。

$ sudo netstat -antlp | grep 45136
tcp      0      0 0.0.0.0:45136         0.0.0.0:*        LISTEN           **-** 

$ kill -9 45136

sudo kill `sudo lsof -t -i:9001`

您不必添加-9信号选项


试试看:

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作为其进程。

它将显示带有端口号和进程id的进程列表

tcp6       0      0 :::8080                 :::*                    LISTEN      
1000       30070621    16085/java

/java之前的数字是进程id。现在使用kill命令来终止进程

kill -9 16085

-9表示进程将被强制终止。


杀死Ubuntu终端端口的最佳方法是使用fuser命令;例如。:

fuser -k 9001/tcp

默认情况下,这将发送SIGKILL。


要终止在端口号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).

有关更多信息,请访问我的博客


其流程分为两个步骤:

知道端口号8080上的进程id(可以是任何)id 8689的终止进程(可以不同)热熔器-n tcp 8080#o/p 8080/tcp 8689杀死-9 8689


为了首先终止基于端口的进程,我们必须找到给定端口的相关pid,

在我的例子中,我想获得3000端口的pid(进程id):

netstat -ltnp | grep -w '3000'

然后找到正在侦听tcp的pid

tcp6       0      0 :::3000                 :::*                    LISTEN      29972/node  

你会得到pid 29972

要终止此pid,请使用以下命令

kill -9 29972

基于端口的kill进程伪码

 netstat -ltnp | grep -w 'PORT'

and

kill -9 PID

您可以使用节点

npm install freethenport -g

然后

node freethenport 9001

显示活动的TCP连接、计算机正在侦听的端口。

netstat -tupln

它将列出pid中的所有连接。查找并复制pid,然后运行以下命令。确保在以下命令中将替换为实际id。

kill -9 <copied pid>

-9用于强制终止连接。


它给我一个错误OSError:[Errno 98]地址已经在使用中。使用以下方法解决了我在Ubuntu中的错误。(版本=“18.04.4 LTS(仿生海狸)”)

$ 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
 

希望它能帮助到某人!


如果我是你,我会用

fuser -k -n tcp PORT
kill -9 PID

xargs是一个非常有用的命令。

您可以使用这样的管道命令

lsof -t -i :9001 | xargs sudo kill

它的作用:它接受第一个命令的输出,在本例中是在端口上运行的进程,并将其传递给sudokill。


当使用更新版本的Ubuntu时,您将不再使用netcat,而是使用ss

ss -lptpn | grep 9001   
sudo kill <replace-with-process-id>

获取端口3000上运行的进程的PID:lsof-i tcp:3000压井工艺kill-9进程id

例子:lsof-i tcp:3000(输出PID=5805)杀死-9 5805

如果需要,使用sudo


您可以在终端中使用以下命令热熔器-k 3000/tcp


只需在终端中输入以下命令

kill -9 $(lsof -t -i:3000)

sudo kill-9$(sudo lsof-t-i:9001)为我工作或你可以使用

sudo kill -9 `sudo lsof -t -i:9001` 

将9001替换为所需的端口号。


sudo netstat-lpn | grep:8080

得到这个过程的PID

杀死-9


也可以使用xargs。只需运行以下命令,

sudo lsof-t-i:443|xargs sudo kill-9


killport <port>

在CLI中添加此代码并使用此别名。

killport () {
  PID=$(sudo lsof -t -i:$1)
  sudo kill -9 ${PID}
}

只需将别名添加到.bashrc/.zshrc:

打开新终端纳米bashrc向下滚动并添加别名:alias kp='sudo kill-9` sudo lsof-t-i:“$1”`'ctrl+x+y源.bashrc9000 kp