netstat输出中PID/程序名列显示短横线(-)的含义咨询
netstat输出中PID/程序名列显示短横线(-)的含义咨询
嗨,我来帮你理清这个疑问~
你看到netstat -p输出里PID/Program name列的短横线-,和该行连接的TIME_WAIT状态直接相关:
当TCP连接进入TIME_WAIT状态时,这个套接字已经和创建它的进程彻底脱离了——主动发起连接关闭的进程已经结束运行,系统会保留这个套接字一段时间(通常是2倍MSL,也就是最大分段生命周期),目的是确保网络中残留的旧报文都被妥善处理,避免干扰后续新建的同端口连接。
因为此时没有活跃的进程关联到这个套接字,netstat -p选项自然找不到对应的PID和程序名,所以就用-来填充这个字段。
而你输出里的第二条连接处于ESTABLISHED状态,说明对应的Java进程(PID 7)还在运行,所以能正常显示进程的PID和名称。
补充下
netstat -p的官方说明:-p, --program用于显示每个套接字所属程序的PID和名称,只有当套接字当前被某个活跃进程占用时,才能输出有效信息。
备注:内容来源于stack exchange,提问作者zelinka
相关产品推荐
相关产品推荐

