Cardinal System Asked: 2019-04-27 16:23:04 +0800 CST2019-04-27 16:23:04 +0800 CST 2019-04-27 16:23:04 +0800 CST 从命令行获取网络利用率 772 在 Windows 任务管理器中,有一个方便的网络选项卡,它显示连接的网络适配器的链接速度和网络利用率(以可用带宽的百分比表示): 有没有办法通过命令行获取这些信息? windows command-line 3 个回答 Voted David 2019-04-30T13:47:47+08:002019-04-30T13:47:47+08:00 这可以在不通过 PowerShell 安装任何东西的情况下完成。 您可以使用以下命令查看每个适配器的总速度和名称: Get-NetAdapter 然后您可以获取名称并将其放入唯一 ID 并查看传入流量的数量: Get-Counter "\Network Interface(<unique id>)\Bytes Received/sec" 如果您想要传出或总流量,请使用: Get-Counter "\Network Interface(<unique id>)\Bytes Sent/sec" Get-Counter "\Network Interface(<unique id>)\Bytes Total/sec" 您还可以通过添加以下内容来衡量一段时间内的使用情况: -SampleInterval 3 -MaxSamples 5 有关详细信息,请参阅帮助页面。 Best Answer sancho.s ReinstateMonicaCellio 2019-05-06T04:27:23+08:002019-05-06T04:27:23+08:00 有很多(大量?)命令行选项可以提供有关网络使用情况的信息。 这涉及到这个问题,那里的答案与目前的 OP 有很大的重叠。正如 OP 中所要求的,其中许多不提供带宽使用百分比。 上面给出了Wireshark的选项。 typeperf(Windows native) 也很相关,有几个选项。 typeperf -q "Network Interface"列出所有对象。然后,使用typeperf "\Network Interface(*)\...以下选项: \Network Interface(*)\Current Bandwidth \Network Interface(*)\Bytes Total/sec \Network Interface(*)\Bytes Received/sec \Network Interface(*)\Bytes Sent/sec \Network Interface(*)\Packets/sec \Network Interface(*)\Packets Received/sec \Network Interface(*)\Packets Sent/sec 注意公式是((Total Bytes/Sec * 8)/current bandwidth) * 100。其他有用的选项: \Network Interface(*)\Packets Received Unicast/sec \Network Interface(*)\Packets Received Non-Unicast/sec \Network Interface(*)\Packets Received Discarded \Network Interface(*)\Packets Received Errors \Network Interface(*)\Packets Received Unknown \Network Interface(*)\Packets Sent Unicast/sec \Network Interface(*)\Packets Sent Non-Unicast/sec \Network Interface(*)\Packets Outbound Discarded \Network Interface(*)\Packets Outbound Errors \Network Interface(*)\Output Queue Length \Network Interface(*)\Offloaded Connections 可以使用flag -sc <samples>(指定要收集的样本数量。默认是收集数据直到按下CTRL+C),参见官方文档。 标志-o <filename>(指定输出文件或 SQL 数据库的路径。默认为 STDOUT(写入命令窗口)。)也可能有用。 此处提供了一个有趣的脚本,可以对其进行自定义以提供各种信息并对其进行格式化。 Reddy Lutonadio 2019-04-30T11:34:10+08:002019-04-30T11:34:10+08:00 安装Wireshark并用于tshark收集统计信息: tshark -z <statistics> 您可以使用netstat: netstat -a -n 或者typeperf: typeperf "Network Interface(*)\Current Bandwidth" typeperf "Network Interface(*)\Bytes Total/sec"
这可以在不通过 PowerShell 安装任何东西的情况下完成。
您可以使用以下命令查看每个适配器的总速度和名称:
然后您可以获取名称并将其放入唯一 ID 并查看传入流量的数量:
如果您想要传出或总流量,请使用:
您还可以通过添加以下内容来衡量一段时间内的使用情况:
有关详细信息,请参阅帮助页面。
有很多(大量?)命令行选项可以提供有关网络使用情况的信息。 这涉及到这个问题,那里的答案与目前的 OP 有很大的重叠。正如 OP 中所要求的,其中许多不提供带宽使用百分比。
上面给出了Wireshark的选项。
typeperf
(Windows native) 也很相关,有几个选项。typeperf -q "Network Interface"
列出所有对象。然后,使用typeperf "\Network Interface(*)\...
以下选项:注意公式是
((Total Bytes/Sec * 8)/current bandwidth) * 100
。其他有用的选项:可以使用flag
-sc <samples>
(指定要收集的样本数量。默认是收集数据直到按下CTRL+C),参见官方文档。标志
-o <filename>
(指定输出文件或 SQL 数据库的路径。默认为 STDOUT(写入命令窗口)。)也可能有用。此处提供了一个有趣的脚本,可以对其进行自定义以提供各种信息并对其进行格式化。
安装Wireshark并用于
tshark
收集统计信息:您可以使用
netstat
:或者
typeperf
: