共计 1177 个字符,预计需要花费 3 分钟才能阅读完成。
丸趣 TV 小编给大家分享一下如何快速解决 Windows 和 Linux 下的端口冲突问题,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
netstat 命令说明
netstat 命令是一个监控 TCP/IP 网络的非常有用的工具,它可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息,在 Windows 和 CentOS 系统下命令参数发现略有区别。
Windows 系统下的 netstat 命令参数:
CentOS 系统下的 netstat 命令参数:
通过对比 netstat 在 Windows 和 CentOS 系统下命令参数我们可以看出在展示进程号上,Windows 系统中加 - o 参数来显示进程号,而 CentOS 系统中加 - p 参数来显示进程号; 所以使用 netstat 展示端口连接时 Windows 和 CentOS 系统下命令分别为:netstat -ano 和 netstat ndash;anp。这两个命令是展示所有的端口连接,如果端口连接很多时不方便查找我们想要的端口是否存在。此时需要再加上端口进行更加查找展示,Windows 下查找的命令是 findstr *,CentOS 下查找的命令是 grep *(此处的 * 使用端口号替代)。
查看端口是否被占用
Windows 下查看端口是否被占用的命令为 netstat -ano | findstr 8088,若已有程序占用执行结果如下图:
CentOS 下查看端口是否被占用的命令为 netstat -anp | grep 8083,若已有程序占用执行结果如下图:
通过进程号查看占用端口的应用程序
netstat 只能查看占用端口的进程号,所以还需要其他命令来查询具体应用程序,Windows 系统我们使用命令 wmic process get name,executablepath,processid | findstr 2984(2984 为使用 netstat 查询的到的进程号),如下图:
CentOS 系统我们使用命令 ps -ef | grep 48963 (48963 为使用 netstat 查询的到的进程号),如下图:
Java 应用程序通过 jps 命令查看应用程序路径
从上面可以看出均是 Java 应用程序,但 Windows 系统下没有像 CentOS 系统下那样列出了应用程序路径,所以还需要使用 Java 自带的命令行工具 jps 2984(2984 为使用 netstat 查询的到的进程号) 来查看 Java 应用程序路径,如下图:
可以看到执行 jps 2984 命令后进程号为 2984 的整个 Java 应用程序的信息,我们找到 user.dir = D:\nexus-2.8.1-01-bundle\nexus-2.8.1-01 即可知道占用端口的应用程序路径了。
看完了这篇文章,相信你对“如何快速解决 Windows 和 Linux 下的端口冲突问题”有了一定的了解,如果想了解更多相关知识,欢迎关注丸趣 TV 行业资讯频道,感谢各位的阅读!