你可以做任何你想要的輸出,如果你像這樣運行:
$MSBuild = [string](MSBuild.exe -argument1 -argument2 -andSoOn)
說你想有輸出到文件中。
$MSBuild = [string](MSBuild.exe -argument1 -argument2 -andSoOn) | Out-File C:\text.txt
或者它像這樣寫......
$MSBuild = [string](MSBuild.exe -argument1 -argument2 -andSoOn) 2>&1 >> C:\text.txt
注:2 「>>」 是指追加1 「>」 覆蓋先前添加的行。
或者如果你只想從一堆輸出中得到一個像「真」一樣的單詞。
$MSBuild = [string](MSBuild.exe -argument1 -argument2 -andSoOn)
if($MSBuid -match "true")
{
Write-Host "Whatever you want to say about what's true"
}
如果你想在控制檯中看到它,你可以這樣做。
$MSBuild = [string](MSBuild.exe -argument1 -argument2 -andSoOn) | Out-Host
或者......
$MSBuild = [string](MSBuild.exe -argument1 -argument2 -andSoOn)
Write-Host $MSBuild
嗨,這似乎不工作: $ msBuildExecutable + $ buildArgs 2>&1 | Write-BuildLog 甚至似乎沒有運行MSBuild? – DashRantic
更多詳細信息 - 我正在尋找運行特定版本的MSBuild,這就是爲什麼我將它放在一個變量中。但看起來我可以按照您提出的方式運行它,這就是爲什麼我首先使用Start-Process的原因 - 還有另一種方法可以在沒有Start-Process的情況下執行此操作嗎? – DashRantic
也只是試過:&$ msBuildExecutable $ buildArgs 2>&1 | Write-BuildLog仍然沒有任何東西 – DashRantic