我无法使用以下方法将批处理文件中java -version
的输出写入文本文件:
java -version>tmp.txt
但是,以下工作(即将数据写入文本文件):
java>tmp.txt
答案 0 :(得分:3)
命令行java -version
返回 STDERR 流的输出数据(而不是 STDOUT )。默认情况下,重定向运算符>
使用流句柄1
,即 STDOUT 流。要从 STDERR 流中读取,您需要明确说明相应的句柄2
:
java -version 2>tmp.txt
命令行java
的行为符合预期,因为它返回 STDOUT 的输出。
引用此外部资源以获取详细信息:Redirection。