PowerShell: Check whether a Windows command or executable is available

In one of my recent PowerShell scripts I needed to find out if certain commands (in my case “svn”, “git”, “ant” and “mvn”) were available or not. I wrote this small function that tries to call the given command and returns whether it is callable.

function commandAvailable($cmd, $options)
{
$error.clear();
$ErrorActionPreference = "silentlycontinue";
& $cmd $options | out-null;
$ErrorActionPreference = "stop";
if ($error[0])
{
write-host ("Command " + $cmd + " " + $options + " is not available") -foregroundcolor "red";
return $false;
}
return $true;
}

write-host (commandAvailable "svn" "--version");

Über Stefan

Polyglot Clean Code Developer

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert