我的Powershell脚本必须从VS命令提示符运行,我想通过检查msbuild.exe是否在路径中来验证它。我设法使用where.exe:
where.exe msbuild.exe > $null
if ($LASTEXITCODE -ne 0)
{
throw "BuildAll must be run from ""Developer Command Prompt for VS2012"" shortcut."
}
然而,这并不像“Powershell方式” - 是否有Powershell本地方式来做到这一点?
答案 0 :(得分:1)
如果msbuild.exe
必须与脚本
if ( TEST-PATH (JOIN-PATH (Split-Path -parent $MyInvocation.MyCommand.Definition) "msbuild.exe " ))
{
...
}
else
{
...
}
如果你想检查build.exe
是否可用作命令(来自$ env:path的任何可用路径),你可以这样做:
if ([bool](Get-Command "msbuild.exe" -ea silentlycontinue))
{
...
}