PowerShell kann in den Simulationsmodus geschalten werden und zwar für die gesamte PowerShell Sitzung. Die Befehle werden dann nicht wirklich ausgeführt. Es wird nur so getan als ob. PowerShell Erfahrene kennen diese Funktion vom -WhatIf Parameter. Aber in diesem Beitrag gehts nicht um den Parameter, sondern ums große Ganze.
Der Trick liegt in einer Variable, die sich $WhatIfPreference nennt. Beim Ausführen wird ersichtlich, dass der Simulationsmodus nicht aktiv ist.
$WhatIfPreference
Aktiviert wird er mit $true.
$WhatIfPreference = $true
Sehr interessant sind jetzt die Ergebnisse, denn egal was ich tue, es wird nicht ausgeführt (zumindest die Befehle nicht, die eine Änderung bewirken).
Aber Achtung: Das gilt nur für PowerShell Befehle, nicht für “Old Style” Befehle wie shutdown oder rd.
Beim Schließen der PowerShell wird die WhatIfPreference wieder auf Default zurückgesetzt. Wer das ändern möchte, der sollte ein PowerShell Profil erstellen: Erstellen eines PowerShell Profils.
Categories: PowerShell
1 reply »