#windows #powershell #wireless
#Windows #powershell #беспроводная
Вопрос:
Сценарий powershell должен включать / отключать адаптер беспроводной сети. Поэтому я использую командлет NetAdaper.
Get-NetAdapter
Enable-NetAdapter -Name 'Wi-Fi'-Confirm:$false
Disable-NetAdapter -Name 'Wi-Fi'-Confirm:$false
Он отлично работает в англоязычных системах.
В системе с настроенными другими языками происходит сбой из-за того, что у беспроводного адаптера нет «Wi-Fi» в качестве имени.
Примером может быть немецкий.
Enable-NetAdapter -Name 'WLAN'-Confirm:$false
Disable-NetAdapter -Name 'WLAN'-Confirm:$false
Как заархивировать этот скрипт, работающий на всех языках?
Ответ №1:
Get-NetAdapter
имеет поле с именем InterfaceType
, которое содержит значение, основанное на этом перечислении:
Согласно этой документации, type 71
— это Wireless80211
устройство.
Просто чтобы показать, что он есть:
[int][System.Net.NetworkInformation.NetworkInterfaceType]::Wireless80211
Итак, вы могли бы сделать что-то вроде этого:
Get-NetAdapter | Where-Object InterfaceType -eq 71
Который вернет список всех беспроводных адаптеров.