Anbietername
Registry
Laufwerke
HKLM:, HKCU:
Kurzbeschreibung
Bietet Zugriff aus Windows PowerShell auf die Registrierungsschlüssel und -werte des Systems.
Ausführliche Beschreibung
Mit dem Windows PowerShell-Registry-Anbieter können Sie Registrierungsschlüssel und -werte in Windows PowerShell abrufen, hinzufügen, ändern, entfernen und löschen.
Registrierungsschlüssel werden als Instanzen der Microsoft.Win32.RegistryKey-Klasse dargestellt. Registrierungswerte werden als Instanzen der PSCustomObject-Klasse dargestellt.
Mit dem Registry-Anbieter können Sie auf einen hierarchischen Namespace zugreifen, der aus Registrierungsschlüsseln und -unterschlüsseln besteht. Registrierungswerte und -daten sind keine Bestandteile dieser Hierarchie. Sie sind stattdessen Eigenschaften der einzelnen Schlüssel.
Der Registry-Anbieter unterstützt alle Cmdlets mit dem Substantiv "Item" (Item-Cmdlets) wie "Get-Item", "Copy-Item" und "Rename-Item". Verwenden Sie die Item-Cmdlets, wenn Sie mit Registrierungsschlüsseln und -unterschlüsseln arbeiten. Der Registry-Anbieter unterstützt auch die Cmdlets mit dem Substantiv "ItemProperty" (ItemProperty-Cmdlets). Verwenden Sie die ItemProperty-Cmdlets, wenn Sie mit Registrierungswerten und -daten arbeiten. Die Cmdlets mit dem Substantiv "Content" (Content-Cmdlets) können nicht mit dem Registry-Anbieter verwendet werden.
Jeder Registrierungsschlüssel wird durch eine Sicherheitsbeschreibung geschützt. Mit "Get-Acl" können Sie die Sicherheitsbeschreibung eines Schlüssels anzeigen.
Funktionen
ShouldProcess
Beispiele
Navigieren in der Registrierung
-------------------------- BEISPIEL 1 --------------------------
Mit diesem Befehl wird der aktuelle Speicherort auf den Registrierungsschlüssel "HKEY_LOCAL_MACHINE\Software" festgelegt.
set-location hklm:\software
-------------------------- BEISPIEL 2 --------------------------
Mit diesem Befehl wird der aktuelle Speicherort angezeigt:
get-location
Verwalten von Registrierungsschlüsseln
-------------------------- BEISPIEL 1 --------------------------
Mit diesem Befehl werden Informationen über jeden direkten Unterschlüssel des Registrierungsschlüssels "HKEY_LOCAL_MACHINE\Software" angezeigt.
get-childitem -path hklm:\software
-------------------------- BEISPIEL 2 --------------------------
Mit diesem Befehl wird der Unterschlüssel "TestNew" unter dem Unterschlüssel "HKCU:\Environment" erstellt:
new-item -path hkcu:\Environment\TestNew
-------------------------- BEISPIEL 3 --------------------------
Mit diesem Befehl wird der Unterschlüssel "TestNew" des Schlüssels "HKEY_CURRENT_USER\Environment" entfernt:
remove-item -path hkcu:\Environment\TestNew
-------------------------- BEISPIEL 4 --------------------------
Mit diesem Befehl wird der Schlüssel "TestNew" in den Unterschlüssel "TestCopy" kopiert:
copy-item -path hkcu:\Environment\TestNew hkcu:\Environment\TestNew\TestCopy
-------------------------- BEISPIEL 5 --------------------------
Mit diesem Befehl werden Informationen über alle Unterschlüssel des Registrierungsschlüssels "HKEY_LOCAL_MACHINE\Software" angezeigt:
get-childitem -path hklm:\Software -recurse
-------------------------- BEISPIEL 6 --------------------------
Mit diesem Befehl werden der Registrierungsschlüssel "HKEY_CURRENT_USER\Environment\testnewcopy" und dessen Eigenschaften mit allen zugehörigen Unterschlüsseln und deren Eigenschaften nach "HKEY_CURRENT_USER\Environment\testnewcopy" verschoben.
move-item -path hkcu:\environment\testnewcopy ` -destination hkcu:\environment\testnew
-------------------------- BEISPIEL 7 --------------------------
Mit diesem Befehl wird der Registrierungsschlüssel "HKEY_CURRENT_USER\Environment\testnew" in "HKEY_CURRENT_USER\Environment\test" umbenannt:
rename-item -path hkcu:\environment\testnew\ -newname test
-------------------------- BEISPIEL 8 --------------------------
Mit diesem Befehl wird die Sicherheitsbeschreibung für das angegebene Registrierungselement angezeigt:
get-acl -path hkcu:\environment\testnew | format-list -property *
Verwalten von Registrierungseinträgen
-------------------------- BEISPIEL 1 --------------------------
Mit diesem Befehl werden der Name und die Daten des Werts für jeden Registrierungseintrag im Registrierungsschlüssel "HKEY_CURRENT_USER\Environment" angezeigt:
get-itemproperty -path hkcu:\Environment
Der Registrierungseintrag "Default" wird nur zurückgegeben, wenn er einen Wert aufweist.
-------------------------- BEISPIEL 2 --------------------------
Mit diesem Befehl werden der Name und die Daten des Werts für den Registrierungseintrag "Temp"im Registrierungsschlüssel "HKEY_CURRENT_USER\Environment" angezeigt:
get-itemproperty -path hkcu:\Environment -name Temp
-------------------------- BEISPIEL 3 --------------------------
Mit diesem Befehl wird der Registrierungseintrag "pstest" im Schlüssel "HKEY_CURRENT_USER" erstellt und dessen Wert auf "pstestvalue" festgelegt.
new-itemproperty -path hkcu:\environment -name "pstest" -value "pstestvalue"
-------------------------- BEISPIEL 4 --------------------------
Mit diesem Befehl wird der Wert des Registrierungseintrags "pstest" im Schlüssel "HKEY_CURRENT_USER\Environment" in "updatedvalue" aktualisiert:
set-itemproperty -path hkcu:\environment -name pstest -value "updatedvalue"
-------------------------- BEISPIEL 5 --------------------------
Mit diesem Befehl wird der Name des Werts für den Registrierungseintrag "pstest" im Schlüssel "HKEY_CURRENT_USER\Environment" in "pstestnew" umbenannt:
rename-itemproperty -path hkcu:\environment -name pstest ` -newname pstestnew
-------------------------- BEISPIEL 6 --------------------------
Mit diesem Befehl wird der Registrierungseintrag "pstestnew" aus dem Schlüssel "HKEY_CURRENT_USER\Environment" in den Schlüssel "HKEY_CURRENT_USER\Environment\testnewcopy" kopiert:
copy-itemproperty -path hkcu:\environment ` -destination hkcu:\environment\testnewcopy -name pstestnew
-------------------------- BEISPIEL 7 --------------------------
Mit diesem Befehl wird der Registrierungseintrag "pstestnew" aus dem Schlüssel "HKEY_CURRENT_USER\environment\testnewcopy" in den Schlüssel "HKEY_CURRENT_USER\environment\testnew" verschoben:
move-itemproperty -path hkcu:\environment\testnewcopy ' -destination hkcu:\environment\testnew -name pstestnew
-------------------------- BEISPIEL 8 --------------------------
Mit diesem Befehl wird der Wert des Registrierungseintrags "pstestnew" im Schlüssel "HKEY_CURRENT_USER\Environment\testnew" gelöscht:
clear-itemproperty -path hkcu:\environment\testnew -name pstestnew
Mit dem Cmdlet "Clear-Item" können Sie den Wert des Registrierungseintrags "Default" für einen Unterschlüssel löschen. Beispielsweise wird mit dem folgenden Befehl der Wert des Default-Eintrags des Registrierungsschlüssels "HKEY_CURRENT_USER\Environment\testnew" gelöscht: clear-item -path hkcu:\environment\testnew
-------------------------- BEISPIEL 9 --------------------------
Mit diesem Befehl wird der Registrierungseintrag "pstestnew" aus dem Registrierungsschlüssel "HKEY_CURRENT_USER\Environment\testnew" entfernt:
remove-itemproperty -path hkcu:\environment\testnew ` -name pstestnew
-------------------------- BEISPIEL 10 --------------------------
Mit diesem Befehl wird der Wert des Registrierungseintrags "Default" im Schlüssel "HKEY_CURRENT_USER\Environment\testnew" in "default value" aktualisiert:
set-itemproperty -path hkcu:\environment\testnew ` -name "(default)" -value "default value"
Sie können den Standardwert eines Registrierungsschlüssels auch mit dem Cmdlet "Set-Item" aktualisieren. Mit dem folgenden Befehl wird beispielsweise der Standardwert des Schlüssels "testnew" aktualisiert: set-item -path hkcu:\environment\testnew -value "another default value"
Dynamische Parameter
Bei dynamischen Parametern handelt es sich um Cmdlet-Parameter, die von einem Windows PowerShell-Anbieter hinzugefügt werden und nur verfügbar sind, wenn das Cmdlet auf dem Anbieterlaufwerk verwendet wird.
Type <Microsoft.Win32.RegistryValueKind>
Gibt die beim Speichern von Werten in der Registrierung zu verwendenden Datentypen an oder identifiziert den Datentyp eines Werts in der Registrierung.
Value | Description |
---|---|
String |
Gibt eine Zeichenfolge an, die auf NULL endet. Entspricht REG_SZ. |
ExpandString |
Gibt eine auf NULL endende Zeichenfolge an, die nicht erweiterte Verweise auf Umgebungsvariablen enthält, die beim Abrufen des Werts erweitert werden. Entspricht REG_EXPAND_SZ. |
Binary |
Gibt Binärdaten in einem beliebigen Format an. Entspricht REG_BINARY. |
DWord |
Gibt eine 32-Bit-Binärzahl an. Entspricht REG_DWORD. |
MultiString |
Gibt ein Array von Zeichenfolgen an, die mit zwei NULL-Zeichen enden. Entspricht REG_MULTI_SZ. |
QWord |
Gibt eine 64-Bit-Binärzahl an. Entspricht REG_QWORD. |
Unknown |
Gibt einen nicht unterstützten Registrierungsdatentyp an, beispielsweise REG_RESOURCE_LIST. |
Unterstützte Cmdlets
Siehe auch