如何仅重定向 stderr?

Joh*_*ohn 15 compiling bash io-redirection

我在这样做时遇到了一些麻烦。我需要运行一个已编译的 .java 文件并仅将 stderr 重定向到一个名为 error 的文件。所以.java 文件被命名为javaProgram.java。

这是我尝试过的:

java javaProgram 2> error
Run Code Online (Sandbox Code Playgroud)

然而当我

cat error
Run Code Online (Sandbox Code Playgroud)

似乎那里有东西,即使我知道特定的 .java 文件没有错误的事实。难道我做错了什么?我希望这个错误文件显示的是错误,而不是其他任何东西。

Mar*_*ick 17

你的第一次尝试是正确的;2>filename是您重定向 stderr 的方式。可能是您的程序正在向 stderr 写入一些非错误,或者 java 程序正在运行其他输出到 stderr 的程序。