Tente esta consulta WMI:
wmic NIC where NetEnabled=true get Name, Speed
Isso deve fornecer a velocidade de todas as conexões de rede ativas.
Para solucionar um problema de rede, gostaria de saber a "velocidade" real da rede para um determinado adaptador de rede, que pode ser visto ao abrir o "status" de uma conexão de rede no Windows:
Noentanto,queroperguntarissopelalinhadecomandooucomumapequenaferramentaseparada,porqueprecisosolicitá-laparaváriasconexõesderedeenãoconfioemqueousuáriobusqueasinformaçõescorretamente.Aconfiguraçãodaplacaderede"Speed / Duplux" é sempre "Auto Negotiate", então eu não posso dizer a partir disso que "Speed" eu vou conseguir.
Da resposta de Indrek:
wmic NIC where NetEnabled=true get Name, Speed
funcionará no prompt de comando. Para uso do PowerShell:
wmic NIC where "NetEnabled='true'" get "Name,Speed"
(A cláusula where e qualquer atributo get (como Nome e Velocidade) devem ser colocados entre aspas duplas e delimitados por vírgulas).
// Edit # 1: Expressão GET Nome, a velocidade deve estar entre um único conjunto de aspas duplas. Obter expressões pode não ter um espaço entre elas
Eu gostaria de contribuir para sua participação. Se você precisar executar o sed no Windows, poderá baixar o UnxUtils e extrair o sed.exe em c: \ Windows \ System32
Então, quando você canaliza com sed como sugeriu, funciona. (Windows 8.1)
Obrigado.
wmic NIC where NetEnabled=true get Name, Speed | sed -e s/000000000/Gbit/ | sed -e s/000000\b/Mbit/
Você também pode usar:
cat /sys/class/net/enp6s0/speed
Ou quando é eth0, para determinar sua conexão de velocidade (100 ou 1000):
cat /sys/class/net/eth0/speed