Bietet Zugriff auf die Windows-Umgebungsvariablen. (Environment)
ANBIETERNAME Environment LAUFWERKE Env:ÜBERSICHTBietet Zugriff auf die Windows-Umgebungsvariablen.BESCHREIBUNGMit dem Windows PowerShell-Environment-Anbieter können Sie Windows-Umgebungsvariablen in Windows PowerShell abrufen, hinzufügen, ändern, entfernen und löschen. Der Environment-Anbieter ist ein flacher Namespace, der nur aus Objekten besteht, die Umgebungsvariablen darstellen. Die Variablen verfügen über keine untergeordneten Elemente. Jede Umgebungsvariable ist eine Instanz der System.Collections.DictionaryEntry-Klasse. Der Name der Variablen bildet den Wörterbuchschlüssel. Der Wert der Umgebungsvariablen bildet den Wörterbuchwert. Der Environment-Anbieter macht seinen Datenspeicher auf dem Laufwerk "Env:" verfügbar. Wenn Sie mit Umgebungsvariablen arbeiten möchten, können Sie den Speicherort in das Laufwerk "Env:" ("set-location env:") ändern oder auf einem beliebigen anderen Windows PowerShell-Laufwerk arbeiten. Wenn Sie von einem anderen Speicherort aus auf eine Umgebungsvariable verweisen möchten, geben Sie den Laufwerknamen "Env:" im Pfad an. Der Umgebungsvariablenanbieter unterstützt mit Ausnahme des Cmdlets "Invoke-Item" alle Cmdlets, die über das Substantiv "Item" verfügen. Darüber hinaus unterstützt er die Cmdlets "Get-Content" und "Set-Content". Er unterstützt jedoch keine Cmdlets, die das Substantiv "ItemProperty" enthalten, sowie keinen Filter-Parameter in Cmdlets. Umgebungsvariablen müssen den üblichen Benennungsstandards entsprechen. Außerdem darf der Name kein Gleichheitszeichen (=) enthalten. Änderungen an den Umgebungsvariablen wirken sich nur auf die aktuelle Sitzung aus. Wenn Sie die Änderungen speichern möchten, fügen Sie sie dem Windows PowerShell-Profil hinzu, oder speichern Sie die aktuelle Sitzung mit Export-Console. FUNKTIONEN AUFGABEN AUFGABE: Wechseln zum Laufwerk "Env:"Beispiele
BEISPIEL 1Mit diesem Befehl wird vom aktuellen Speicherort zum Laufwerk "Env:" gewechselt. set-location env: Sie können diesen Befehl von einem beliebigen Laufwerk in Windows PowerShell aus verwenden. Um zu einem Dateisystemlaufwerk zurückzukehren, geben Sie den Laufwerknamen ein. Geben Sie beispielsweise Folgendes ein: set-location c: AUFGABE: Abrufen von UmgebungsvariablenBEISPIEL 1Mit diesem Befehl werden alle Umgebungsvariablen in der aktuellen Sitzung aufgelistet: get-childitem -path env: Sie können diesen Befehl von einem beliebigen Windows PowerShell-Laufwerk aus verwenden.BEISPIEL 2Mit diesem Befehl wird die Umgebungsvariable WINDIR abgerufen: get-childitem -path env:windirBEISPIEL 3Mit diesem Befehl wird eine Liste aller Umgebungsvariablen in der aktuellen Sitzung abgerufen und nach dem Namen sortiert: get-childitem | sort-object -property name Die Umgebungsvariablen werden standardmäßig in der Reihenfolge ihres Auffindens durch Windows PowerShell angezeigt. Dieser Befehl wird auf dem Laufwerk "Env:" übermittelt. Wenn dieser Befehl von einem anderen Laufwerk aus ausgeführt wird, fügen Sie den Path-Parameter mit dem Wert "Env:" hinzu. AUFGABE: Erstellen einer neuen UmgebungsvariablenBEISPIEL 1Mit diesem Befehl wird die Umgebungsvariable USERMODE mit dem Wert "Non-Admin" erstellt: new-item -path . -name USERMODE -value Non-Admin Da sich der aktuelle Speicherort auf dem Laufwerk "Env:" befindet, ist der Wert des Path-Parameters ein Punkt (.). Der aktuelle Speicherort wird durch den Punkt (.) dargestellt. Wenn Sie sich nicht auf dem Laufwerk "Env:" befinden, wird als Wert des Path-Parameters "Env:" angegeben. AUFGABE: Anzeigen der Eigenschaften und Methoden von UmgebungsvariablenBEISPIEL 1In diesem Befehl werden mit dem Cmdlet "Get-ChildItem" alle Umgebungsvariablen abgerufen: get-childitem -path env: | get-member Mit dem Pipelineoperator (|) werden die Ergebnisse an "Get-Member" gesendet, wodurch die Methoden und Eigenschaften des Objekts angezeigt werden. Wenn Sie eine Auflistung von Objekten über die Pipeline an Get-Member übergeben, z. B. die Auflistung von Umgebungsvariablen auf dem Laufwerk "Env:", wird von Get-Member jedes Objekt in der Auflistung einzeln ausgewertet, und Get-Member gibt Informationen zu jedem erkannten Objekttyp zurück. Wenn alle Objekte denselben Typ aufweisen, werden Informationen zu dem betreffenden Objekttyp zurückgegeben. In diesem Fall sind alle Umgebungsvariablen DictionaryEntry-Objekte. Verwenden Sie zum Abrufen von Informationen über die Auflistung von DictionaryEntry-Objekten den InputObject-Parameter von Get-Member. Geben Sie beispielsweise Folgendes ein: get-member -inputobject (get-childitem env:) Wenn Sie den InputObject-Parameter angeben, wird von Get-Member anstelle der Objekte in der Auflistung die Auflistung ausgewertet.BEISPIEL 2Mit diesem Befehl werden die Werte der Eigenschaften der Umgebungsvariablen WINDIR aufgelistet: get-item env:windir | format-list -property * Mit dem Cmdlet "Get-Item" wird ein Objekt abgerufen, das die Umgebungsvariable WINDIR darstellt. Die Ergebnisse werden mit dem Pipelineoperator (|) an den Befehl "Format-List" gesendet. Er verwendet den Property-Parameter mit einem Platzhalterzeichen (*), um die Werte aller Eigenschaften der Umgebungsvariablen WINDOR zu formatieren und anzuzeigen. AUFGABE: Ändern der Eigenschaften einer UmgebungsvariablenBEISPIEL 1Dieser Befehl verwendet das Cmdlet "Rename-Item", um den Namen der erstellten Umgebungsvariablen USERMODE in USERROLE zu ändern: rename-item -path env:USERMODE -newname USERROLE Dieses Änderung wirkt sich auf die Eigenschaften "Name", "Key" und "PSPath" des DictionaryEntry-Objekts aus. Ändern Sie nicht den Namen einer Umgebungsvariablen, die vom System verwendet wird. Diese Änderungen wirken sich zwar nur auf die aktuelle Sitzung aus, sie können jedoch zu einem fehlerhaften Betrieb des Systems bzw. eines Programms führen.BEISPIEL 2Dieser Befehl ändert den Wert der Umgebungsvariablen USERROLE mit dem Cmdlet "Set-Item" in "Administrator": set-item -path env:USERROLE -value Administrator AUFGABE: Kopieren einer UmgebungsvariablenBEISPIEL 1Dieser Befehl kopiert den Wert der Umgebungsvariablen USERROLE in die Umgebungsvariable USERROLE2: copy-item -path env:USERROLE -destination env:USERROLE2 AUFGABE: Löschen einer UmgebungsvariablenBEISPIEL 1Mit diesem Befehl wird die Umgebungsvariable USERROLE2 aus der aktuellen Sitzung gelöscht: remove-item -path env:USERROLE2 Sie können diesen Befehl auf einem beliebigen Windows PowerShell-Laufwerk verwenden. Wenn Sie sich auf dem Laufwerk "Env:" befinden, können Sie den Laufwerknamen im Pfad auslassen.BEISPIEL 2Mit diesem Befehl wird die Umgebungsvariable USERROLE gelöscht. clear-item -path env:USERROLE DYNAMISCHE PARAMETERHINWEISEDer Environment-Anbieter unterstützt keine dynamischen Parameter. VERWANDTE LINKS about_Providers C:\Windows>powershell get-help FileSystem -full
Microsoft Windows [Version 10.0.19045.3693]
Copyright (c) 2023 Microsoft Corporation.
ColorConsole [Version 3.7.1000] PowerShell 2.0-Export