Sometimes it would be useful to identify the automatic PowerShell variables managed by PowerShell so you could differentiate between built-in variables and your own. Get-Variable always dumps all variables.
Here is a simple trick that uses a separate new and fresh PowerShell runspace to determine the built-in PowerShell variables:
# create a new PowerShell
$ps = [PowerShell]::Create()
# get all variables inside of it
$null = $ps.AddCommand('Get-Variable')
$result = $ps.Invoke()
# dispose new PowerShell
# check results
$varCount = $result.Count
Write-Warning "Found $varCount variables."
$result | Out-GridView
When you run this, the code reports the number of found variables, and the variables.
ReTweet this Tip!