k-ist-k
Goto Top

PowerShell Ausgabe einer Spalte nur mit Werten

Hallo Werte ITlerInnen,

ich hänge gerade seit einer Zeit an einem einfachen Problem.
Und zwar habe ich einen PowerShell Befehl, der mir meine Werte liefert die ich brauche,
aber die Ausgabe passt nicht.

Das Beispiel was ich zeige ist nicht das was ich brauche,
aber es ist das selbe Problem.

Ich habe folgenden Befehl (der zeigt mir in der Powershell die Netzwerkadapter)
Get-NetAdapter -Name Ethernet* 

Jetzt erhalte ich eine große Tabelle mit Werten.
Sagen wir mich interessiert nur die MAC Adresse.
Dann mache ich diesen Code:
Get-NetAdapter -Name Ethernet* |  Select MacAdress

macaddress

Aber ich brauche eine Ausgabe ohne denn ersten zwei Zeilen.
Es gibt doch eine Möglichkeit wie man nur die Werte ausgibt, oder ?
Hab irgendwas im Kopf wie: $_.MacAdress aber es funktioniert nicht

Es gebe natürlich die Möglichkeit die Ausgabe in eine Datei zu speichern.
Dann die ersten 2-3 Zeilen zu entfernen und erneut in eine Datei zu sichern.
Diese Variante kenne ich, möchte ich aber verhindern.
Da gibt es einige Varianten, zB
$file = "D:\TEST.txt"  
(Get-Content $file | Select-Object -Skip 3) | Set-Content $file

Kann man eine Spalte direkt als Wert ausgeben, ohne etwas extra noch Anpassen zu müssen ?


Lg K

Content-Key: 562933

Url: https://administrator.de/contentid/562933

Printed on: April 16, 2024 at 18:04 o'clock

Member: K-ist-K
K-ist-K Apr 03, 2020 at 19:32:35 (UTC)
Goto Top
Bei dem oben genannten Beispiel funktioniert:
Get-NetAdapter -Name Ethernet* | foreach {$_.MacAddress} 

Bei meinem Beispiel wo ich es brauche, musste ich hinten noch das anhängen:
... | foreach { $_.RawIdentity }

Damit die eine leere Zeile gelöscht wird.
Bei dem Beispiel oben ist das schlecht, da dann keine Ausgabe mehr vorhanden ist
Mitglied: 143728
143728 Apr 03, 2020, updated at Apr 04, 2020 at 07:09:55 (UTC)
Goto Top
Dafür gibt es alternativ auch den Parameter -ExpandProperty von select
Get-NetAdapter -Name Ethernet* | Select -Expand MacAddress
oder auch
(Get-NetAdapter -Name Ethernet*).MacAddress
Immer dran denken Powershell arbeitet objektorientiert! Das sind also nicht nur einfache Strings die du da siehst sondern typisierte Eigenschaften eines Objektes!