Here is a simple program.
class Redirection {
public static void main (String args[]){
System.out.println("Hello World_Stdout");
System.err.println("Hello World_Stderr");
}
}
I want to see the all the outputs on a console, but at the same time I want to store stdout and stderr in different files. I tried the following command, to no avail.
$java Redirection 3>&1 2>stderr 1>stdout 1>&3 2>&3
stderr& stdout files have the file size of 0.
So basically I want to do what “tee” command does but I also want to capture stderr as well.
Here is an answer:
./yourScript.sh > >(tee stdout.log) 2> >(tee stderr.log >&2)If your script has STDOUT and STDERR descriptors, you get 2 files stdout.log + stderr.log and all output (Err + Out) to console.