2011-05-12 93 views
3

我需要輸出關於java.exe版本的一些信息到文本文件。 命令提示符命令命令行輸出到TXT文件(Java.exe -version)返回空白

C:\Windows\System32\Java.exe > C:\Users|txt.txt outputs everything to the correct file. 

當我嘗試添加-version

C:\Windows\System32\Java.exe -version > C:\Users|txt.txt, the output text file remains blank. 

有沒有辦法進入一個txt文件呢?

回答

22

使用此命令行:

C:\Windows\System32\Java.exe -version 2> C:\Users\txt.txt 

(注意附加2。)

Java正在寫入的版本信息,以標準誤差(通道2),而不是標準輸出。

+0

工作完美,謝謝 – sealz 2011-05-12 19:22:56

+2

這是爲什麼?我的意思是爲什麼輸出到標準錯誤,而不是標準輸出? – opensas 2012-01-27 02:39:33

+1

@opensas:我不知道,但是如果我不得不猜測,我會說stdout是爲Java程序本身保留的,所以運行時而不是程序的任何內容都會發送到stderr。 – RichieHindle 2012-01-27 11:13:31

3

命令「java -version」將其輸出打印到標準錯誤中。 因此,您可以使用「2>」重定向這些輸出。

+0

完美的工作,謝謝 – sealz 2011-05-12 19:23:04