分享免费的编程资源和教程

网站首页 > 技术教程 正文

netstat -nab一行显示或不换行 运行netstat后出来很多条

goqiw 2024-10-24 12:30:09 技术教程 20 ℃ 0 评论

我们在查看本机网络连接情况的时候可能会使用netstat -nab,但是输出是这样的,会很不方便。

  协议  本地地址          外部地址        状态
  TCP    0.0.0.0:135            0.0.0.0:0              LISTENING
  RpcSs
 [svchost.exe]
  TCP    0.0.0.0:445            0.0.0.0:0              LISTENING
 无法获取所有权信息
  TCP    0.0.0.0:902            0.0.0.0:0              LISTENING
 [vmware-authd.exe]
  TCP    0.0.0.0:912            0.0.0.0:0              LISTENING
 [vmware-authd.exe]
  TCP    0.0.0.0:2202           0.0.0.0:0              LISTENING
  TermService
 [svchost.exe]
  TCP    0.0.0.0:3071           0.0.0.0:0              LISTENING
 [javaw.exe]
  TCP    0.0.0.0:5985           0.0.0.0:0              LISTENING
 无法获取所有权信息
  TCP    0.0.0.0:9021           0.0.0.0:0              LISTENING
 [FileZilla Server.exe]
  TCP    0.0.0.0:9921           0.0.0.0:0              LISTENING
 [FileZilla Server.exe]
  TCP    0.0.0.0:47001          0.0.0.0:0              LISTENING
 无法获取所有权信息
  TCP    0.0.0.0:49258          0.0.0.0:0              LISTENING
 [javaw.exe]
  TCP    0.0.0.0:49259          0.0.0.0:0              LISTENING
-- More  --

如果能一行显示就方便多了,在网上查了很久,终于找到方法了

$nets = netstat -nabo|select-string 'TCP|UDP'; foreach ($n in $nets)   {    $p = $n -replace ' +',' ';    $nar = $p.Split(' ');    $pname = $(Get-Process -id $nar[-1]).ProcessName;    $n -replace "$($nar[-1])","$($ppath) $($pname)";    } 

将此代码保存为nn.ps1,然后打开powershell,运行下

PS C:\tools> .\nn.ps1 | more
TCP    0.0.0.0: System System5            0.0.0.0:0              LISTENING        System
  TCP    0.0.0.0:902            0.0.0.0:0              LISTENING        vmware-authd
  TCP    0.0.0.0:912            0.0.0.0:0              LISTENING        vmware-authd
  TCP    0.0.0.0:2202           0.0.0.0:0              LISTENING        svchost
  TCP    0.0.0.0:3071           0.0.0.0:0              LISTENING        javaw
  TCP    0.0.0.0:5985           0.0.0.0:0              LISTENING        System
  TCP    0.0.0.0:9021           0.0.0.0:0              LISTENING        FileZilla Server
  TCP    0.0.0.0:9921           0.0.0.0:0              LISTENING        FileZilla Server
  TCP    0.0.0.0: System7001          0.0.0.0:0              LISTENING        System
  TCP    0.0.0.0:49258          0.0.0.0:0              LISTENING        javaw
  TCP    0.0.0.0:49259          0.0.0.0:0              LISTENING        java
  TCP    0.0.0.0:49260          0.0.0.0:0              LISTENING        java
  TCP    0.0.0.0:49664          0.0.0.0:0              LISTENING        wininit
  TCP    0.0.0.0:49665          0.0.0.0:0              LISTENING        svchost
  TCP    0.0.0.0:49666          0.0.0.0:0              LISTENING        svchost
  TCP    0.0.0.0:49668          0.0.0.0:0              LISTENING        svchost
  TCP    0.0.0.0:49669          0.0.0.0:0              LISTENING        spoolsv
  TCP    0.0.0.0:49678          0.0.0.0:0              LISTENING        lsass
  TCP    0.0.0.0:49679          0.0.0.0:0              LISTENING        services

这样看起来是不是就舒服多了。



如果powershell,不能运行脚本,请用下面命令设置下

.\nn.ps1 : 无法加载文件 C:\tools\nn.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies。
所在位置 行:1 字符: 1
+ .\nn.ps1
+ ~~~~~~~~
    + CategoryInfo          : SecurityError: (:) [],PSSecurityException
    + FullyQualifiedErrorId : UnauthorizedAccess

以管理员身份打开PowerShell 输入 set-executionpolicy remotesigned

参考文档

https://superuser.com/questions/1215093/powershell-one-liner-to-show-process-on-same-line-as-port-using-netstat-issue

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表