PowerShell: Clear-Variable & Remove-Variable

Wie auch in anderen Programmiersprachen oder Scriptsprachen verwendet man in PowerShell Variablen zum speichern von Werten. Oft muss man aber eine oder mehrere Variablen leeren. Hierzu bietet sich das Cmdlet Clear-Variable an. Werden Variablen gar nicht mehr benötigt, so kann man diese auch komplett löschen mit Remove-Variable.

In einem früheren Beitrag haben wir übrigens auch schon den Unterschied zwischen $NULL und einer leeren Variable mit "" erklärt: https://www.itnator.net/variable-null-und-als-leere-variable-in-powershell/

Variable leeren mit Clear-Variable

Die einfachste Möglichkeit eine Variable zu leeren, ist das Zuweisen eines leeren Strings. Allerdings gibt es in einem PowerShell Script auch eine vornehmere Lösung, die auch Vorteile bietet. Das Cmdlet Clear-Variable hilft ganz einfach, den Wert einer Variable zu löschen, so dass diese leer ist.

Um nun den Inhalt einer Variable zu löschen, wird das Cmdlet Clear-Variable und die gewünschte Variable angegeben. Wichtig ist hierbei, dass diese OHNE Dollar-Zeichen ($) angegeben wird. Hier ein Beispiel dazu:

$myVar1 = "Test1"
$myVar2 = "Test2"
$myVar3 = "Test3"

cls
write-host "Inhalt der ersten Variable: $myVar1"

Clear-Variable myVar1
write-host "Variable wird geleert..."
write-host "Inhalt der ersten Variable: $myVar1"

Als Ausgabe in PowerShell erhält man zuerst den Inhalt der ersten Variable ausgegeben, danach wird diese mit Clear-Variable geleert.

Inhalt der ersten Variable: Test1
Variable wird geleert...
Inhalt der ersten Variable: 

PowerShell: Mehrere Variablen leeren

Mit Clear-Variable ist es sogar möglich mehrere Variablen gleichzeitig zu leeren. Der wohl einfachste Weg ist diese nacheinander mit einem Komma getrennt anzugeben.

Clear-Variable myVar1,myVar2

Eine weitere nette Lösung ist, dass Clear-Variable sogar den PowerShell Operator -like unterstützt. Das bedeutet, dass mit einem Sternchen * der Inhalt von gleichnamigen Variablen gelöscht werden kann.

Clear-Variable myVar*

Clear-Variable PowerShell

Variable löschen mit Remove-Variable

Das einfache Leeren von einzelnen oder mehreren Variablen haben wir bereits besprochen. In der Regel reicht das auch aus. Möchte man nun ganz sauber entwickeln, so kann man auch Variablen komplett löschen, sobald diese nicht mehr benötigt werden. Hier hilft in PowerShell das Cmdlet Remove-Variable.

Remove-Variable myVar1

Synchron zu Clear-Variable wird in PowerShell bei Remove-Variable diese ohne $-Zeichen angegeben. Zunächst möchten wir euch aber an einem Beispiel zeigen, wie dieses Cmdlet in einem PowerShell Script verwendet wird. Werden Variablen nicht komplett gelöscht, so stehen diese zur Auswahl:

PowerShell Variable Auswahl ISE

Löscht man nun mit Remove-Variable eine gewünschte Variable in Powershell, so steht diese nicht mehr zur Verfügung. In der ISE ist dies wieder deutlich zu sehen:

Remove-Variable Powershell

PowerShell: Mehrere Variablen löschen

Auch wie in bei Clear-Variable ist es bei Remove-Variable möglich, mehrere Variablen anzugeben und somit komplett löschen zu lassen. In einem PowerShell Script wird erst wieder das Cmdlet und danach die gewünschten Variablen angegeben:

Remove-Variable myVar1,myVar2

Auch hier kann man mit dem Wildcard Operator * gleichzeitig alle gleichnamigen Variablen löschen lassen. Die Vorgehensweise ist in PowerShell immer gleich:

Remove-Variable myVar*

Powershell Variablen löschen (Remove)
Johannes
 

Click Here to Leave a Comment Below 0 comments
sidebar