h41msh1c0r
Goto Top

Powershell Registryschlüssel zusammensammeln

Einen schönen Nachmittag,

folgendes einzeln geht:

$key = 'HKLM:\SOFTWARE\SWM\'  
(Get-ItemProperty -Path $key).Installationsdatum

Ergebnis: <Zeitstempel> <-- OK

folgendes geht nicht
$return = gci 'HKLM:\SOFTWARE\SWM\'   
$return | % {
    $key = "$_.Name"  
    (Get-ItemProperty -Path $key).Installationsdatum
}

Ergebnis:

Get-ItemProperty : Der Pfad "C:\Users\<Name>\HKEY_LOCAL_MACHINE\SOFTWARE\SWM\Realtek Semiconductor Corp. MEDIA Driver Package   hdxfts.inf   
(6.0.1.7606)-01.Name" kann nicht gefunden werden, da er nicht vorhanden ist.  

Wieso geht das eine aber das andere nicht?

$_.Name im 2ten innerhalb des % löst er korrekt auf wenn ich ein write-host zum test ausgeben lasse.

VG

Content-ID: 364614

Url: https://administrator.de/forum/powershell-registryschluessel-zusammensammeln-364614.html

Ausgedruckt am: 16.04.2025 um 16:04 Uhr

135333
Lösung 135333 13.02.2018 aktualisiert um 14:42:44 Uhr
Goto Top
$key = "$_.Name"
Das geht nicht! Das Abfragen von Eigenschaften eines Objektes innerhalb von Anführungszeichen bedingen eine Subexpression!
Also entweder gleich ohne
$key = $_.Name
oder
$key = "$($_.Name)"

Und anstatt $_.Name nehme die Version mit "PS" Prefix und PSdrive. Lass dir einfach die Eigenschaften mit Format-List auflisten.

Also nimmst du
$key = $_.PSPath

Gruß Snap
H41mSh1C0R
H41mSh1C0R 13.02.2018 um 15:00:05 Uhr
Goto Top
Dankeschön (*und wieder einen Tipp an die Wand gepinnt*) und einen schönen Feierabend

VG