Powershell netsh wlan Werte in Variable speichern und weiter verwenden
Hallo Zusammen,
ich habe ein Problem in der Powershell.
Ich möchte in der Powershell meinen aktuellen WLAN-Namen anzeigen lassen, aber nur meinen WLAN-Namen. Diesen möchte ich in eine Variable speichern und dann weiter verwenden.
Ich habe bis jetzt nur herausgefunden, dass ich mit
mein aktuell verbundenes WLAN anzeigen lassen kann. Folgendes kommt dabei raus:
Ich möchte praktisch jetzt die SSID in eine Variable speichern und weiter verwenden. Mit select-object komme ich hier nicht weiter.
Kann mir jemand helfen?
Danke und viele Grüße
ich habe ein Problem in der Powershell.
Ich möchte in der Powershell meinen aktuellen WLAN-Namen anzeigen lassen, aber nur meinen WLAN-Namen. Diesen möchte ich in eine Variable speichern und dann weiter verwenden.
Ich habe bis jetzt nur herausgefunden, dass ich mit
netsh wlan show interfaces
Name : WLAN
Beschreibung : Intel(R) Wi-Fi 6 AX201 160MHz
GUID : XXXXXXXX
Physische Adresse : XXXXXXXX
Status : Verbunden
SSID : Test-WLAN
BSSID : XXXXXXXX
Netzwerktyp : Infrastruktur
Funktyp : 802.11n
Authentifizierung : WPA2-Enterprise
Verschlsselung : CCMP
Verbindungsmodus : Automat. Verbindung
Kanal : 6
Empfangsrate (MBit/s) : 130
šbertragungsrate (MBit/s) : 144.4
Signal : 91%
Profil :TEST-WLAN
Hosted network status : Nicht verfgbar
Ich möchte praktisch jetzt die SSID in eine Variable speichern und weiter verwenden. Mit select-object komme ich hier nicht weiter.
Kann mir jemand helfen?
Danke und viele Grüße
Please also mark the comments that contributed to the solution of the article
Content-Key: 3080978299
Url: https://administrator.de/contentid/3080978299
Printed on: April 25, 2024 at 14:04 o'clock
10 Comments
Latest comment
$ssid = netsh wlan show interfaces | ?{$_ -match '\s+SSID\s*:\s*([^\r\n]+)'} | %{$matches[1]}
$ssid = [regex]::match((netsh wlan show interfaces | out-string),'(?i)\s+SSID\s*:\s*([^\r\n]+)').Groups[1].Value
$ssid = netsh wlan show interfaces | sls -Pattern '\s+SSID\s+:\s*(.+)' | %{$_.matches.Groups[1].Value}
Grüße Uwe
$ssid = (Get-NetConnectionProfile).Name
s.o. Hier im Test aber kein Problem mit dashes.
Wenn man's aber genau nimmt und auch Umlaute in einer SSID supporten möchte (sollte man ja per best practice eigentlich nie machen) muss man das Encoding der netsh Ausgabe beachten
Wenn man's aber genau nimmt und auch Umlaute in einer SSID supporten möchte (sollte man ja per best practice eigentlich nie machen) muss man das Encoding der netsh Ausgabe beachten
function ConvertFrom-CP850([string[]]$string){
$cp850 = [System.Text.Encoding]::GetEncoding(850)
$string | %{$cp850.GetString([System.Console]::OutputEncoding.GetBytes($_))}
}
$ssid = ConvertFrom-CP850 (netsh wlan show interfaces) | ?{$_ -match '\s+SSID\s*:\s*([^\r\n]+)'} | %{$matches[1]}
Kann ich nicht bestätigen, funktioniert hier im Test problemlos. [^\r\n]+ matcht alles was kein CR oder LF ist, wäre hier zwar auch nicht extra nötig da Zeilen-Array und ein .* würde es auch tun.