Wie bereits erwähnt, ist diese Änderung nicht persistent. Soll eine Änderung von Dauer sein, dann ist die Methode SetEnvironmentVariable() (aus dem -Framework) zu verwenden. Im folgenden Beispiel soll eine Variable mit der Bezeichnung "foo" und dem Wert "bar" hinzugefügt werden. Die Anweisung dafür lautet:
[System. Environment]::SetEnvironmentVariable('foo', 'bar', [System. EnvironmentVariableTarget]::Machine)
Interessant ist dabei, dass ein EnvironmentVariableTarget festgelegt werden muss (hier: Machine). Das hängt damit zusammen, dass Windows, im Gegensatz zu UNIX-artigen Systemen, mehrere Geltungsbereiche für Umgebungsvariablen kennt. Powershell variable ausgeben model. Diese sind:
Machine User Process
Weiterführende Links
about_Environment_Variables (Microsofts PowerShell-Dokumentation) about_Environment_Provider (Microsofts PowerShell-Dokumentation) Environment Class (Microsofts)
Powershell Variable Ausgeben Error
Du kannst den Code direkt mit in dein Script kopieren und hast so eine gute Orientierungshilfe, sobald du die Scripts auf deine Bedürfnisse anpasst. Powershell 3: Variablen erstellen und mit diesen Rechnen - Servervoice. Ich erstelle und veröffentliche sämtliche Videos kostenlos und blende auch keine Werbung ein, dies will ich auch so beibehalten. Da das vermittelte Wissen aber in teuren Kursen erlangt werden kann, ist eine kleine Spende hin und wieder sicher keine schlechte Gegenleistung. German PowerSHELL Unterstützen CHF
Für die Farbwerte hat Microsoft eine Reihe von Konstanten wie etwa Blue, Grey oder Cyan definiert, die man als Argumente verwenden kann (eine vollständige Liste findet sich hier). Ein weiteres Feature von Write-Host besteht darin, dass man bei der Ausgabe von Arrays bestimmen kann, wie die einzelnen Elemente voneinander getrennt werden. Standardmäßig erscheint jedes von ihnen in einer eigenen Zeile:
1.. 10 | Write-Host
Dies kann man mit dem Schalter NoNewline verhindern. Alternativ lässt sich mit Separator aber auch ein Trennzeichen definieren, das zwischen die Elemente eingefügt wird:
Write-Host (1.. 10) -Separator "--"
Von Write-Host in Scripts ist abzuraten
Auch wenn Write-Host diese zusätzlichen Möglichkeiten zur Formatierung bietet, ist es mit Vorsicht zu genießen. Es hat nämlich die Eigenheit, den Output grundsätzlich auf den Bildschirm zu schreiben. Powershell variable ausgeben error. Dabei lässt es sich weder von einem Redirect noch von einer Pipeline beirren:
Write-Host "Das kommt nicht in an" >
1.. 10 |% {Write-Host $_} | where {$_ -lt 5}
Im zweiten Beispiel gibt Write-Host einfach alle Zahlen von 1 bis 10 aus, ohne dass Where-Object die Möglichkeit hätte, sie zu filtern.