CMD:如何将java -version的结果写入/打印到某个文件

时间:2015-07-21 14:58:30

标签: java windows cmd

我尝试执行:

    cmd /c java -version > someFile.txt
    cmd /c echo java -version > someFile.txt

但是没有任何内容写入我正在重定向到的文件中。

2 个答案:

答案 0 :(得分:3)

捕获stderr而不是stdout:

java -version 2> someFile.txt
java -fullversion 2> someFile.txt
cmd /c java -version 2> someFile.txt

This解释了为什么Java将帮助写入stderr:

  

在修复此错误之前,我们应该非常非常仔细地思考。   将版本信息打印到stderr显然是错误的,   但是,因为我们从一开始就一直在这样做   如果我们这样做,我们可能会破坏基于Java构建的现有系统   现在改变它。如果我们决定改变它,那么它必须等到   Tiger发布,以便进行充分的测试。

答案 1 :(得分:1)

Java将此信息写入标准错误而不是标准输出,因此您需要重定向正确的通道

cmd /c java -version 2> someFile.txt

这很有效。