发送Java版本以文本文件
我有Java版本发送到一个文本文件,如下发送Java版本以文本文件
C:\>java -version > C:\cfn\log\JavaVersion.log
但是,当我打开检查的文件,它完全是空的。我立即在下面的线获得版本,作为 -
C:\>java -version > C:\cfn\log\JavaVersion.log
java version "1.8.0_121"
Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)
我该如何解决这个问题?
试试这个会在当前路径上创建一个文件。
java -version > JavaVersion.log 2>&1
或这一个,这将指定的路径
java -version > C:\cfn\log\JavaVersion.log 2>&1
语法2>&1
上创建文件将重定向2 (stderr)
到1 (stdout)
。您还可以通过重定向到NUL
改进了我的答案,再次检查。 –
这就是我正在寻找的东西..你做了我的一天。谢谢:) –
当我在'&java -version> C:\ JavaVersion.log 2>&1'的PowerShell中尝试同样的东西时,当我尝试打开文件的内容时,下面是我看到的 - ' java.exe:java version“1.8.0_121” At line:1 char:1 +&java -version> C:\ JavaVersion.log 2>&1 + ~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~类别信息:未指定:(java版本“1.8.0_121”:字符串)[],远程异常012xxFullyQualifiedErrorId:NativeCommandError 的Java(TM)SE运行时环境(建立1.8.0_121-B13 ) 爪哇热点(TM)64位服务器VM(生成25.121-B13,混合模式)'。 –
在我的Mac隐藏的消息,
java -version
打印到标准错误。
重定向错误输出到一个文件,这样做:
java -version 2> foo.txt
对于如何做到这一点在Windows上,请参阅:
这是最完美的一个。非常感谢 :) –
看那DUP和答案。他们也喜欢其他人。 java发送这个信息给stderr。这是一个普通的例子。 PowerShell将其视为故障。 – Matt