Anbietername

Environment

Laufwerke

Env:

Kurzbeschreibung

Bietet Zugriff auf die Windows-Umgebungsvariablen.

Ausführliche Beschreibung

Mit 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.

Beispiele

Wechseln zum Laufwerk "Env:"

Abrufen von Umgebungsvariablen

-------------------------- BEISPIEL 1 --------------------------

Mit 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 2 --------------------------

Mit diesem Befehl wird die Umgebungsvariable WINDIR abgerufen:

get-childitem -path env:windir

-------------------------- BEISPIEL 3 --------------------------

Mit 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.

Erstellen einer neuen Umgebungsvariablen

-------------------------- BEISPIEL 1 --------------------------

Mit 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.

Anzeigen der Eigenschaften und Methoden von Umgebungsvariablen

-------------------------- BEISPIEL 1 --------------------------

In 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 2 --------------------------

Mit 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.

Ändern der Eigenschaften einer Umgebungsvariablen

-------------------------- BEISPIEL 1 --------------------------

Dieser 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 2 --------------------------

Dieser Befehl ändert den Wert der Umgebungsvariablen USERROLE mit dem Cmdlet "Set-Item" in "Administrator":

set-item -path env:USERROLE -value Administrator

Kopieren einer Umgebungsvariablen

-------------------------- BEISPIEL 1 --------------------------

Dieser Befehl kopiert den Wert der Umgebungsvariablen USERROLE in die Umgebungsvariable USERROLE2:

copy-item -path env:USERROLE -destination env:USERROLE2

Löschen einer Umgebungsvariablen

-------------------------- BEISPIEL 1 --------------------------

Mit 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 2 --------------------------

Mit diesem Befehl wird die Umgebungsvariable USERROLE gelöscht.

clear-item -path env:USERROLE

Siehe auch




Inhaltsverzeichnis