2012-02-21 33 views
0

如何將標準錯誤傳輸到DOS批處理文件中的文件?使用>>的管道僅傳輸標準輸出,而標準錯誤仍會傳送到控制檯。我的問題如何將標準錯誤導入DOS(批處理文件)中的文件?

詳情:

我通過命令行運行WinRAR的,在自動化的日常備份。而下面的例子管道WinRAR的輸出,而不是錯誤輸出這是我最想要的,到winraroutput.txt

RAR.exe a -esh -r "E:\backup.rar" "D:\*.*" >> winraroutput.txt 

的問題是,有時文件正在使用,當他們是我想知道他們在被漏診歸檔並將其記錄在每個.rar文件旁邊的.txt文件中,以防萬一我們必須回去。丟失的文件很容易被重新安裝程序取代,所以替換它們沒什麼大不了的,只要我們知道它們丟失了。所以這只是需要知道的信息,並非必要。

如何僅將標準錯誤輸出輸出到.txt文件,並且如果可能但不是必需,則將常規輸出保留到控制檯?

加分點:

獎勵積分,如果你能告訴我怎麼刪除該文件,如果它是空白(沒有錯誤)!在這裏問:How do I Detect (and Delete) a File if it is Empty using a Windows Batch File?

回答

3

試試這個:

command.exe 2>file.txt 

或者,如果你不希望看到任何錯誤,它發送到NUL:

command.exe 2>nul 

這應該離開的std ::法院在控制檯上。

+0

非常好。這是答案。謝謝。由於StackOverflow對我的不安全性,我必須等5分鐘才能表明這一點。 :) – Xonatron 2012-02-21 13:59:25

+0

獎勵積分,如果你能告訴我如何刪除文件,如果它是空白的! :) – Xonatron 2012-02-21 14:01:49

相關問題