Here is a Node Script to determine if Powershell is installed on a remote computer:
[System.Reflection.Assembly]::LoadWithPartialName(‘Microsoft.VisualBasic’) | Out-Null
$name = [Microsoft.VisualBasic.Interaction]::Inputbox(“Enter the IP or Name of the server:”)
$pshell = Get-WmiObject Win32_QuickFixEngineering -ComputerName “$($name)” | Where-Object{$_.HotFixID -eq “kb968930”}
if ($pshell -eq $null){Write-Output “Powershell 2.0 is NOT installed.”}
else {Write-Output “Powershell 2.0 IS installed”}