asd*_*ael 43 networking windows command-line
为了解决网络问题,我想查询给定网络适配器的真实网络“速度”,这可以在 Windows 下打开网络连接的“状态”时看到:

但是我想通过命令行或使用一个小的独立工具来查询这个,因为我需要为多个网络连接请求这个,并且不相信用户会正确获取信息。网卡“Speed/Duplux”设置始终为“Auto Negotiate”,因此我无法从中得知我将获得什么“Speed”。
Ind*_*rek 66
试试这个 WMI 查询:
wmic NIC where NetEnabled=true get Name,Speed
Run Code Online (Sandbox Code Playgroud)
这应该为您提供所有活动网络连接的速度。
编辑:正如已经指出的那样,必须修改此查询才能在 PowerShell 中工作(尽管它在 cmd.exe 中工作正常)。再说一次,在 PowerShell 中你根本不需要使用 WMI:
Get-NetAdapter | where Status -eq "Up" | select InterfaceDescription, LinkSpeed
Run Code Online (Sandbox Code Playgroud)
作为奖励,这提供了一种很好的、人类可读的格式(例如“1 Gbps”)的速度,而不是每秒的位数。
来自 Indrek 的回答:
wmic NIC where NetEnabled=true 获取名称、速度
将在命令提示符下工作。对于 PowerShell 使用:
wmic NIC where "NetEnabled='true'" get "Name,Speed"
Run Code Online (Sandbox Code Playgroud)
(where子句和任何get属性(如 Name 和 Speed)必须用双引号括起来并以逗号分隔)。
// 编辑 #1:GET 表达式 Name,Speed 必须包含在一组双引号中。Get 表达式之间不能有空格
| 归档时间: |
|
| 查看次数: |
181150 次 |
| 最近记录: |