1
和CMD一樣,要運行一個C++程序,我使用命令g++ filename.cpp
,然後使用命令a.exe
運行它,該命令在CMD本身中打開輸出。如何使用PowerShell做這樣的事情?我無法通過簡單的命令打開文件,如a.exe
。我做錯了嗎?如何在Powershell中運行C++程序,就像CMD一樣?
和CMD一樣,要運行一個C++程序,我使用命令g++ filename.cpp
,然後使用命令a.exe
運行它,該命令在CMD本身中打開輸出。如何使用PowerShell做這樣的事情?我無法通過簡單的命令打開文件,如a.exe
。我做錯了嗎?如何在Powershell中運行C++程序,就像CMD一樣?
這是使用調用操作符並引用命令的最佳實踐。
& ".\a.exe" p1 p2 p3
PowerShell還允許使用/
作爲路徑分隔符。
& "./a.exe" p1 p2 p3 "p4 with space"
由於不包含任何空格,因此'。\ a.exe'周圍的引號不是必需的。 –
說實話我一直在勉強。我在PowerShell中運行cmd,然後以cmd的方式執行舊的cmd。 – user4581301
嘗試像這樣'。/ a' – BLUEPIXY
從CMD運行a.exe不會輸出到「CMD本身」。 cmd.exe,powershell.exe和a.exe是將在啓動時繼承或創建控制檯的控制檯應用程序,該控制檯由控制檯子系統主機進程conhost.exe的實例單獨託管。如果從cmd.exe運行a.exe,它會繼承cmd.exe的控制檯作爲它的「StandardInput」,「StandardOutput」和「StandardError」文件句柄 - 而「CMD本身」的單個線程只會阻塞.exe退出。 – eryksun