Re: trying to redirect both std out and err to a file together and
still err to a separate file
(unknown) wrote:
I tested your suggestion with some java [sic] code and it works nicely
Whose suggestion about what?
comp.unix.shell: trying to redirect both std out and err to a file toget=
her
and still err to a separate file
This is easy to do with shell constructs.
import java.util.Locale;
import java.util.Date;
import java.text.DateFormat;
// __
public class Test{
public static void main(String[] args){
DateFormat DF = DateFormat.getDateInstance(DateFormat.FULL, Locale.FR=
ANCE);
http://www.oracle.com/technetwork/java/codeconv-138413.html
You should follow the coding conventions, at least mostly.
// __ std out
System.out.println("// __ out.println: |" + DF.format(new Date()) + "|"=
);
What are you trying to accomplish here?
DF = DateFormat.getDateInstance(DateFormat.FULL, Locale.CHINESE);
// __ std err
System.err.println("// __ err.println: |" + DF.format(new Date()) + "|"=
);
// __ Exception in thread "main" java.lang.NullPointerException
DF = null;
DF.format(new Date());
What are you trying to accomplish here?
}
}
/*
rm -f *.log
export _DT=`date +%Y%m%d%H%M%S_%s`
echo ${_DT}
(javac Test.java 2>&1 >&3 | tee ${_DT}"_errc.log" >&3) 3> ${_DT}"_errc.lo=
g"
Your use of quotation marks here is superfluous.
I would have to review this shell command, but it looks weird
to me. I don't normally go for such outr=E9 file-descriptor manipulation
so it will take time and effort to sort all that stuff out.
(java Test 2>&1 >&3 | tee ${_DT}"_err.log" >&3) 3> ${_DT}"_err_out.log"
ls -l *.log
cat *_err.log
cat *_err_out.log
*/
Glad it did what you want, though, whatever that was.
Hard to tell when the message is not in its thread context.
--
Lew