temp.txt 正在创建 temp.txt,其中没有任何内容。 “java”命令输出显示在控制台本身中,而不重定向到 temp.txt 但是如果我执-6ren">
gpt4 book ai didi

java - 无法将 "java"命令的输出重定向到文本文件

转载 作者:行者123 更新时间:2023-12-02 06:15:52 27 4
gpt4 key购买 nike

我正在 cmd 提示符中尝试以下操作:

java>temp.txt

正在创建 temp.txt,其中没有任何内容。 “java”命令输出显示在控制台本身中,而不重定向到 temp.txt

但是如果我执行以下操作:

目录> temp.txt

dir 命令的输出被重定向到临时文件。

为什么“java”命令的输出没有被重定向到文本文件?

最佳答案

> 用于将标准输出 (stdout) 发送到给定位置。但是使用 java 命令打印的输出是标准错误 (stderr) 输出。

要重定向 stderr,您可以使用以下语法。这会将标准输出重定向到stdout.txt,并将标准错误重定向到stderr.txt

java > stdout.txt 2> stderr.txt

或者,您可以使用以下命令将标准输出标准错误发送到同一文件(无需两次提及文件名)。

java > output.txt 2>&1

2> 表示重定向 stderr,&1 表示重定向到 stdout 的位置,即 output.txt。因此,此命令会将 stdout 重定向到 output.txt,并将 stderr 重定向到 stdout 重定向的位置(即 output.txt 本身)。

您还可以通过发送到 /dev/null(仅限 Linux)来忽略 stderr

java > out.txt 2> /dev/null

关于java - 无法将 "java"命令的输出重定向到文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42680035/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com