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


40

ネットワークの問題をトラブルシューティングするには、特定のネットワークアダプターの実際のネットワーク「速度」を問い合わせたいと思います。これは、Windowsでネットワーク接続の「ステータス」を開くときに表示できます。 速度設定

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

回答:


61

このWMIクエリを試してください。

wmic NIC where NetEnabled=true get Name, Speed

これにより、すべてのアクティブなネットワーク接続の速度が得られます。

編集:指摘したように、このクエリはPowerShellで動作するように変更する必要があります(ただし、cmd.exeでも正常に動作します)。次に、PowerShellでは、WMIを使用する必要はまったくありません。

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

おまけとして、これは1秒あたりのビット数ではなく、人間が読める形式(例:「1 Gbps」)で速度を提供します。


1
そして、NetEnabled = trueを取得してwmic NICをsedした場合、名前、速度を取得します。sed -es / 000000000 / Gbit / | sed -es / 000000 \ b / Mbit /
ジェイミークック14年

2
そのWMIクエリはWindows 8 cmdで機能していましたが、Windows 7ではこれを使用する必要がありました:wmic NIC where "NetEnabled = 'true'" get "Name、Speed"スペースまたはコマンド区切り文字として。PowerShellにもこの問題があります。私を正しい道に導いてくれてありがとう!
男14年

ちょうど私が必要なもの!あなたは素晴らしい人です; n; +1(PSは1秒あたりのビット数ですか?)
Cardinal System

1
@CardinalSystemはい、1秒あたりのビット数です。
インドレック

6

Indrekの答えから:

NetEnabled = trueのwmic NICは、名前、速度を取得します

コマンドプロンプトで動作します。PowerShellを使用する場合:

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

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

//編集#1:GET expression Name、Speedは、二重引用符の単一セットで囲む必要があります。取得式にはそれらの間にスペースがない場合があります


それは奇妙です。ここでは引用符なしで機能します。
DavidPostill

@DavidPostill PSのGET式を中断します(2番目のアイテムを追加すると)。
ルイ

1
あ。確認済み。PowerShellには引用符が必要であり、cmdシェルでは不要であることを答えに追加する必要があります。
DavidPostill

2

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

その後、提案したようにsedでパイプすると、動作します。(Windows 8.1)

ありがとう。

wmic NIC where NetEnabled=true get Name, Speed | sed -e s/000000000/Gbit/ | sed -e s/000000\b/Mbit/

\bsedCygwin では動作しません。私のために働くのはです[^0]。または、完了するために:s/000000[^0]/Mbit/
ペポルアン

それ以外は、000000の後の最初の非ゼロ文字を飲み込みますが、これはあなたが望むものではないかもしれません。
-Wodin

-1

以下も使用できます。

cat /sys/class/net/enp6s0/speed

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

cat /sys/class/net/eth0/speed


なぜ答えは下がったのですか?
グリーンツリー

1
私にはわかりません、ここではまだゼロのようです:S。これが唯一のLinux ..ですのでmabye OW
Melroy
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.