2013-05-26 49 views
0

例如,我需要設置兩個tee命令,其中一個將從STDOUT讀取,另一個從STDERR讀取,並將控制檯輸出重定向到不同的文件。在Windows批處理文件中可以這樣做嗎?我知道如何將輸出重定向到文件,但在這種情況下,它不會顯示在屏幕上或如何組合兩個流,但如何獨立管道?有沒有辦法將STDERR和STDOUT傳遞給不同的程序?

+0

正在運行什麼程序?它是一個批處理文件嗎?你能展示適當的部分嗎? – foxidrive

+0

這是在Windows XP中的批處理文件,我試圖將stdout重定向到tee和stderr到sed,然後管道到另一個tee副本。所以我可以看到什麼是錯誤,做什麼是正常輸出。 – rsk82

+0

你能減少make的詳細程度嗎? – foxidrive

回答

2

您可以處理STDOUT和STDERR通過下一招單獨的程序:先用綠色數字和STDERR輸出由紅色的前面

(test | findstr /N /A:2A "^") 2>&1 1>&3 | findstr /N /A:4E "^" 

上一行顯示STDOUT輸出。只需使用您的TEE程序,不是FINDSTR ...

如果您還沒有爲批處理文件足夠的TEE程序,可以在這裏找到一個:Displaying Windows command prompt output and redirecting it to a file

0

你可以將stdout和stderr重定向到不同的文件,但是這只是它的大概。

如果make輸出可以在每行上進行時間編碼,那麼這兩個文件可以調整並重新交錯。

相關問題