我正在撰寫通過 ProcessStartInfo 運行 Git 命令的 C# 代碼。
我知道在語法方面我可以通過&在它們之間添加一個字符來并行地從控制臺運行命令。例如:
echo "Hello world!" & echo "Goodbye world!"
因為這些命令并行運行,所以它們是異步的,這意味著它們的輸出順序是隨機的。問題是,在我的 C# 代碼中,我需要使用每個命令的回應,不幸的是,沒有指示性輸出告訴我哪個輸出屬于我運行的哪個命令。
有沒有辦法告訴哪個輸出來自哪個命令?
例如,一種在特定命令完成時回顯特定文本的方法?
uj5u.com熱心網友回復:
正如您可以以用戶身份打開多個命令視窗并在其中鍵入命令一樣,您可以將多個命令列程式作為 C# 中的獨立行程并行運行,從而分別讀取它們的輸出。
uj5u.com熱心網友回復:
echo "Hello world!" >1st.out 2>1st.err &
echo "Goodbye world!" >2nd.out 2>2nd.err &
通過將其標準輸出和錯誤重定向到不同的檔案來運行每個命令,然后每個命令的輸出相互隔離。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/536290.html
標籤:C#壳命令行
