lennox2844
Goto Top

Powershell Abfrage in Variable speichern, Variable aufrufen und damit weiterarbeiten

Hallo Zusammen,

kurze und einfache Frage. Gibt es die Möglichkeit eine Ausgabe bei der Powershell in eine Variable zu speichern, diese dann wieder abzurufen und nach einem Ergebnis zu filtern?

Bsp:
Es soll die IPAdresse ausgegeben werden und die Subnetzmaske. Beide Werte hole ich aus Win32_NetworkAdapterConfiguration raus.

$IPAdresse = (Get-Wmiobject Win32_NetworkAdapterConfiguration -Filter "IPEnabled=true").IpAddress  
$Subnetzmaske = (Get-Wmiobject Win32_NetworkAdapterConfiguration -Filter "IPEnabled=true").IPsubnet  


Kann ich irgendwie die Abfrage in eine extra Variable bringen, diese dann Abrufen und Filtern, so das Win32_NetworkAdapterConfiguration nicht zwei mal abgerufen wird?
Also sowas wie.....
$NetworkAdapter = Get-Wmiobject Win32_NetworkAdapterConfiguration
$IPAdresse  = $NetworkAdapter -Filter "IPEnabled=true").IPsubnet  


Danke für eure Hilfe!
Grüße

Content-ID: 2840333932

Url: https://administrator.de/forum/powershell-abfrage-in-variable-speichern-variable-aufrufen-und-damit-weiterarbeiten-2840333932.html

Ausgedruckt am: 31.01.2025 um 00:01 Uhr

colinardo
Lösung colinardo 19.05.2022 aktualisiert um 15:00:27 Uhr
Goto Top
Servus,
kein Problem
$config = Get-Wmiobject Win32_NetworkAdapterConfiguration -Filter "IPEnabled=true"  
$config.IPAddress
$config.IPSubnet
Oder auch so wenn du erst mal alle Adapter in einem Object speichern willst und dann mittels Where-Object entsprechend filterst.
$config = Get-Wmiobject Win32_NetworkAdapterConfiguration
$config | ?{$_.IPEnabled} | %{
    $_.IPAddress
    $_.IPSubnet
}
Denk aber daran das es mehrere aktive Netzwerkadapter geben kann!

Grüße Uwe

p.s. die WMI CMDLets sind eigentlich schon länger deprecated markiert, nutzte am besten gleich die CIM CMDLets wie Get-CimInstance & Co. die sind übrigens auch schneller.