我从java类中打开了端口#5955,以便从客户端进行通信。我怎么关闭这个端口后,我做了?还有哪个命令可以显示我如果端口打开或关闭?
当前回答
我为此创建了一个函数。
function free_port() {
if [ -z $1 ]
then
echo no Port given
else
PORT=$1;
PID=$(sudo lsof -i :$PORT) # store the PID, that is using this port
if [ -z $PID ]
then
echo port: $PORT is already free.
else
sudo kill -9 $PID # kill the process, which frees the port
echo port: $PORT is now free.
fi
fi
}
free_port 80 # you need to change this port number
在终端中复制并粘贴此代码块可以释放所需的端口。记得修改最后一行的端口号。
其他回答
这似乎对我有用。只需将your_port_number更改为您想要停止的端口号。
sudo lsof -t -i tcp:your_port_number | xargs kill -9
使用命令查找进程ID
lsof -n -i4TCP:8080
在获得processId之后
sudo kill -9 processID
然后提供您的系统密码。
你也可以使用第一个命令来杀死一个拥有特定端口的进程:
sudo netstat -ap | grep :<port_number>
例如,这个进程持有8000 TCP端口,然后运行以下命令:
sudo netstat -ap | grep :8000
将输出与进程持有端口8000对应的行,例如:
tcp 0 0 *:8000 *:* LISTEN 4683/procHoldingPort
在本例中,procHoldingPort是打开端口的进程的名称,4683是它的pid, 8000(注意它是TCP)是它持有的端口号(您希望关闭该端口号)。
然后按照上面的例子杀死进程:
kill 4683
正如其他人在这里提到的,如果这不起作用(你可以尝试使用-9作为参数的kill):
kill -9 4683
同样,通常情况下,如果可以,最好避免发送SIGKILL(-9)。
找出占用您想释放的端口号(例如,5955)的进程ID (PID) Sudo lsof -i:5955 使用PID杀死当前正在使用该端口的进程 sudo kill -9 PID
非常简单的找到端口5900:
sudo lsof -i :5900
然后考虑59553作为PID
sudo kill 59553
推荐文章
- 在Mac OS X上哪里安装Android SDK ?
- Mac/OS X上的/var/lib/docker在哪里
- Xcode构建失败“架构x86_64未定义的符号”
- 在OSX 10.11中安装Scrapy时,“OSError: [Errno 1]操作不允许”(El Capitan)(系统完整性保护)
- 如何在Mac OS X 10.6中使硬件发出哔哔声
- 从Cocoa应用程序执行一个终端命令
- Android Studio无法找到有效的Jvm(与MAC OS相关)
- NSRange从Swift Range?
- 如何在交互式Python中查看整个命令历史?
- 无法启动IIS Express Web服务器,注册URL失败,访问被拒绝
- 在OSX中永久设置PATH环境变量
- 如何停止mysqld
- 如何从远程SSH会话发送数据到本地剪贴板
- SSH端口转发~/。ssh /配置文件?
- 我可以在/etc/hosts中映射主机名*和端口*吗?