寻找相当于' netstat -anob'的WMI。

时间:2014-08-22 06:50:29

标签: windows vbscript connection wmi netstat

我想从netstat -anob获取实例,如

   Proto  Local Address        Foreign Address             State           PID  
    TCP      0.0.0.0:135         0.0.0.0:0                 LISTENING       976  
    RpcSs [svchost.exe]  
    TCP      0.0.0.0:2030        0.0.0.0:0                 LISTENING       2256
    [omtsreco.exe]

并保持XML格式,因此像这样的代码片段不适合我

set sh = CreateObject("Wscript.Shell")  
call GetConnections()  
Function GetConnections()  
  i = 0  
  set shExec = sh.Exec("netstat -anob")  
   Do While Not shExec.StdOut.AtEndOfStream  
      Wscript.Echo shExec.StdOut.ReadLine()  
  Loop  
End Function 

我发现我可以从 Win32_Process 获取 PID 可执行文件但是其他实例我不知道如何获取它。 我想知道是否可以使用WMI来完成上述命令,如果有人能指导如何操作,我将不胜感激。

PS。我必须在.vbs扩展名中创建它,以便WMI尽可能适合解决方案。

此致

Phamornh

1 个答案:

答案 0 :(得分:1)

您可以使用tcpvcon.exe from sysinternal s,-c参数会以csv格式显示结果

PS>.\Tcpvcon.exe -c                                                                                              

TCPView v2.54 - TCP/UDP endpoint viewer                                                                          
Copyright (C) 1998-2009 Mark Russinovich                                                                         
Sysinternals - www.sysinternals.com                                                                              

TCP,[System Process],0,TIME_WAIT,x.y.com:4679,x.y.com:63394    
TCP,[System Process],0,TIME_WAIT,x.y.com:4679,x.y.com:63438    
TCP,putty.exe,7120,CLOSE_WAIT,x.y.com:8080,localhost:62516