linux下根据根据进程号查端口、根据端口号查进程号汇总,以及netstat的相关资料(工作中匮乏的知识)

本文详细介绍如何使用lsof和netstat命令根据端口查询进程,以及如何根据进程号或进程名查找对应的端口号。此外,还提供了通过ps命令结合grep筛选特定进程的方法,并附带了netstat的参考资料。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

根据端口查进程:
lsof -i:port
netstat -nap | grep port

根据进程号查端口:
lsof -i|grep pid
netstat -nap | grep pid

根据进程名查找pid、port:
ps -ef |grep tomcat
ps -ef |grep port(根据port查找相关进程)
ps -ef |grep pid(根据pid查找相关进程)

引申:
netstat的相关资料:https://www.cnblogs.com/ggjucheng/archive/2012/01/08/2316661.html
--------------------- 
原文:https://blog.youkuaiyun.com/dataiyangu/article/details/84232092 

### Tomcat 9 启动时出现闪退问题的原因分析 当遇到 `startup.bat` 执行后立即退出的情况,通常是因为配置文件中的端口被占用或是存在其他环境变量冲突等问题。具体原因可能涉及以下几个方面[^1]: - **端口冲突**:默认情况下,Tomcat 使用8080端口作为HTTP服务监听端口。如果该端口已被其他应用程序使用,则可能导致Tomcat无法正常启动并迅速关闭。 - **JVM参数设置不当**:不合适的Java虚拟机(JVM)参数可能会引起内存不足或其他异常情况,从而导致程序崩溃。 - **日志级别过高**:某些错误信息仅在较低的日志等级下可见;若当前设定为较高级别(如ERROR),则一些警告性质的消息不会显示出来,使得排变得困难。 为了有效诊断和解决问题,建议按照如下方法操作: #### 方法一:检端口状态 通过命令行工具查看本地计算机上已使用的TCP/IP连接列表,确认是否有进程正在占用目标端口号: ```bash netstat -ano | findstr :8080 ``` 如果有匹配项返回,说明确实存在竞争关系,此时可以考虑更改Tomcat的默认端口配置或将干扰源停止运行后再尝试重启服务器实例。 #### 方法二:调整JVM选项 编辑位于安装目录下的`bin/setenv.bat`(如果没有此文件可自行创建),向其中添加合理的堆大小限制及其他必要的优化措施: ```batchfile set JAVA_OPTS=-Xms512m -Xmx1024m -XX:PermSize=256M -XX:MaxPermSize=512m ``` 这一步骤有助于提高系统的稳定性和响应速度,减少因资源匮乏而导致的服务中断风险。 #### 方法三:降低日志阈值 修改`conf/logging.properties`内的记录器属性,使更多类型的事件能够被捕获到控制台输出流中供开发者审: ```properties .handlers = java.util.logging.ConsoleHandler .level = ALL java.util.logging.ConsoleHandler.level = ALL org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = ALL ``` 上述改动可以让用户更全面地了解整个初始化过程的状态变化趋势,进而快速定位潜在隐患所在位置。 最后,在完成以上各项检验之后再次执行批处理脚本(`startup.bat`)来验证修复效果如何。如果仍然存在问题,请务必仔细阅读官方文档获取进一步指导或寻求社区支持。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值