Umgebungsvariablen mit PowerShell festlegen

  1. Was sind Umgebungsvariablen
  2. Setzen Sie eine Umgebungsvariable mit Env: in PowerShell
  3. Legen Sie die .NET-Klasse [System.Environment] in PowerShell fest
  4. Aktualisieren Sie die Umgebungsvariablen in der aktuellen PowerShell-Sitzung
Umgebungsvariablen mit PowerShell festlegen

Die Verwendung von Windows PowerShell zum Festlegen von Windows-Umgebungsvariablen, zum Lesen von Umgebungsvariablen und zum Erstellen neuer Umgebungsvariablen ist einfach, sobald wir die ordnungsgemäße Ausführung von Befehlen kennen.

PowerShell bietet viele verschiedene Methoden zur Interaktion mit Windows-Umgebungsvariablen aus dem PSDrive $env: und der .NET-Klasse [System.Environment]. In diesem Artikel wird das Festlegen von Umgebungsvariablen und deren Aktualisierung in unserer aktuellen Sitzung mit PowerShell erläutert.

Was sind Umgebungsvariablen

Wie der Name schon sagt, speichern Umgebungsvariablen Informationen über Windows- und Anwendungsumgebungen.

Wir können auf Umgebungsvariablen über eine grafische Oberfläche wie Windows Explorer und Texteditoren wie Notepad, cmd.exe und PowerShell zugreifen.

Die Verwendung von Umgebungsvariablen hilft uns, Dateipfade, Benutzer- oder Computernamen und mehr in unseren PowerShell-Skripts oder -Modulen fest zu codieren.

Setzen Sie eine Umgebungsvariable mit Env: in PowerShell

Wir können neue Umgebungsvariablen mit PowerShell erstellen, indem wir das Cmdlet New-Item verwenden. Geben Sie jedoch zunächst den Namen der Umgebungsvariablen im Format Env:\<EnvVarName> für den Parameter Value an, wie unten gezeigt.

Beispielcode:

New-Item -Path Env:\TEST -Value WIN10-DESKTOP

Ausgang:

Name                           Value
----                           -----
TEST                           WIN10-DESKTOP

Wir können das Cmdlet Set-Item verwenden, um eine Umgebungsvariable zu setzen oder eine neue zu erstellen, falls sie noch nicht existiert. Zum Beispiel können wir unten mit dem Cmdlet Set-Item sehen.

Wir können eine Umgebungsvariable sowohl erstellen als auch ändern.

Beispielcode:

Set-Item -Path Env:TEST -Value "TestValue"

Legen Sie die .NET-Klasse [System.Environment] in PowerShell fest

Die [System.Environment] verwendet einige verschiedene Methoden der statischen .NET-Klasse. Wir müssen nicht verstehen, was ein statischer Weg ist.

Wir müssen nur verstehen, eine der Techniken zu verwenden, die wir gleich lernen werden, und wir müssen zuerst auf die Klasse ([System.Environment]) verweisen, gefolgt von zwei Doppelpunkten (::), gefolgt von der Methode .

Um die Umgebungsvariable mithilfe der angegebenen .NET-Klasse festzulegen, verwenden Sie die Funktion SetEnvironmentVariable(), um den Wert einer vorhandenen Umgebungsvariablen für den angegebenen Bereich festzulegen, oder erstellen Sie eine neue Umgebungsvariable, falls diese noch nicht vorhanden ist.

Beim Festlegen von Variablen im Prozessbereich stellen wir fest, dass der Prozessbereich flüchtig ist und in der aktuellen Sitzung vorhanden ist, während Änderungen an den Benutzer- und Maschinenbereichen dauerhaft sind.

Beispielcode:

[System.Environment]::SetEnvironmentVariable('TestVariable','TestValue','User')

Aktualisieren Sie die Umgebungsvariablen in der aktuellen PowerShell-Sitzung

Um unseren neuen Satz von Umgebungsvariablen in unserer PowerShell-Sitzung zu verwenden, rufen Sie die Umgebungsvariable des Benutzerprofils und des Computers über die .NET-Klasse ab und weisen Sie sie der PowerShell-Umgebungsvariablen zu.

Da Umgebungsvariablen auch als PowerShell-Variablen gelten, können wir ihnen direkt einfacher Werte zuweisen.

Beispielcode:

$env:PATH = [System.Environment]::GetEnvironmentVariable("Path","Machine") + ";" + [System.Environment]::GetEnvironmentVariable("Path","User")
Marion Paul Kenneth Mendoza avatar Marion Paul Kenneth Mendoza avatar

Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.

LinkedIn

Verwandter Artikel - PowerShell Environment Variables