Automating PowerShell ISE

by Mar 4, 2015

PowerShell 3.0 and later

PowerShell ISE is completely scriptable and is accessible through the $psISE variable. This variable is present only within the PowerShell ISE.

To get to the script content of the currently visible script, try this:

 
PS> $psise.CurrentFile.Editor.Text 
 

To create a simple refactoring automation, this line would replace all instances of “testserver” with “productionserver” in the currently opened script inside the PowerShell ISE (so make sure you add a couple of instances of “testserver” to your current script:

 
$psise.CurrentFile.Editor.Text = $psise.CurrentFile.Editor.Text -replace 'testserver', 'ProductionServer'
 

Twitter This Tip! ReTweet this Tip!