2012-04-16 07:57:40 +0000 2012-04-16 07:57:40 +0000
40
40

Windowsのコマンドラインでネットワーク接続の速度(高速またはギガビットイーサネット)を検出する方法

ネットワークの問題をトラブルシューティングするために、指定されたネットワークアダプタの実際のネットワークの「速度」を照会したいのですが、これはWindowsでネットワーク接続の「ステータス」を開いたときに表示されます。

ただし、複数のネットワーク接続に対してこの情報を要求する必要があり、ユーザーが適切に情報を取得することを信用していないため、コマンドラインまたは小さな別のツールを使用してこの情報を取得したいのです。ネットワークカードの “Speed/Duplux "設定は常に "Auto Negotiate "になっているので、どのような "Speed "が得られるのかがわかりません。

回答 (4)

63
63
63
2012-04-16 08:18:22 +0000

以下の WMI クエリを試してみてください。

wmic NIC where NetEnabled=true get Name, Speed

これですべてのアクティブなネットワーク接続の速度がわかります。

編集:指摘されているように、このクエリはPowerShellで動作するように修正する必要があります(cmd.exeでは問題なく動作します)。

Get-NetAdapter | where Status -eq "Up" | select InterfaceDescription, LinkSpeed

ボーナスとして、これは毎秒のビット数ではなく、人間が読みやすい形式(例えば「1Gbps」)で速度を表示します。

6
6
6
2016-06-04 00:36:35 +0000

Indrekさんの回答より。

wmic NIC where NetEnabled=true get Name, Speed

はコマンドプロンプトで動作します。PowerShellの場合は

wmic NIC where "NetEnabled='true'" get "Name,Speed"

where句とget属性(NameやSpeedなど)は二重引用符で囲み、カンマで区切る必要があります)。

// Edit #1: GET式Name,Speedは二重引用符で囲まなければなりません。GET式の間にスペースを入れてはいけません。

2
2
2
2015-04-16 16:15:45 +0000

あなたのシェアに貢献したいと思います。Windowsでsedを実行する必要がある場合は、UnxUtilsをダウンロードして、c:\WindowsSystem32

にsed.exeを抽出して、あなたが提案したようにsedでパイプすると、それは動作します。(Windows 8.1)

ありがとう。

wmic NIC where NetEnabled=true get Name, Speed | sed -e s/000000000/Gbit/ | sed -e s/000000\b/Mbit/
-1
-1
-1
2018-09-26 20:55:48 +0000

を使うこともできます。

cat /sys/class/net/enp6s0/speed

または、eth0 の場合は、速度接続(100 または 1000)を決定するために、

cat /sys/class/net/eth0/speed を使用します。