2014-02-10 65 views
1

我想使用powershell執行一個外部命令,而不需要彈出第二個程序,我需要在同一PowerShell窗口內執行此程序並輸出日誌和錯誤。 我從這開始:PowerShell在同一窗口中執行外部命令

$outcome = Start-Process -Wait -FilePath "cmd.exe" -ArgumentList "dir" -NoNewWindow 2>&1 
$outcome 

但它不能按預期工作。我仍然看到用DOS彈出的新窗口,並且根本沒有關於輸出,錯誤等等的重定向。 我做錯了什麼?

+0

您可以使用'Invoke-Expression'來代替嗎? – arco444

+0

是的,我可以,但我發現的所有例子都是開始 - 處理相關... – Raffaeu

回答

4

這是否適合您?

$outcome = Invoke-Expression "cmd.exe /c dir" 
$outcome 
+0

是的,完美!謝謝 – Raffaeu