这是一个简单的程序.
class Redirection { public static void main (String args[]){ System.out.println("Hello World_Stdout"); System.err.println("Hello World_Stderr"); } }
我想在控制台上看到所有输出,但同时我想将stdout和stderr存储在不同的文件中.我尝试了以下命令,但无济于事.
$java Redirection 3>&1 2>stderr 1>stdout 1>&3 2>&3
标准错误和放大器; stdout文件的文件大小为0.
所以基本上我想做什么“tee”命令,但我也想捕获stderr.
这是一个答案:
./yourScript.sh\u0026gt; >(tee stdout.log)2> >(tee stderr.log>& 2)
如果您的脚本具有STDOUT和STDERR描述符,则会获得2个文件stdout.log stderr.log以及所有输出(Err Out)到控制台.