答案1
有大量的命令行选项可以提供有关网络使用情况的信息。 这处理了这个问题,那里的答案与当前 OP 有很大的重叠。其中许多答案没有提供 OP 所要求的带宽使用百分比。
选项Wireshark已在上面给出。
typeperf
(Windows 本机)也相关,带有一些选项。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
您可以使用标志
-sc <samples>
(指定要收集的样本数。默认是收集数据,直到按下 CTRL+C),请参阅官方文档.
标志-o <filename>
(指定输出文件的路径,或者 SQL 数据库。默认为 STDOUT(写入命令窗口)。)也可能有用。给出了一个有趣的脚本,可以定制它以提供各种信息并对其进行格式化这里。
答案2
无需通过 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
查看帮助页面了解更多信息。