I try to use tee to save output in file like:
myapp | tee log.txt
But I have a problem with checking of exit. Previous code:
For bash, there's a convenient special array: PIPESTATUS. The return code for myapp
would be in ${PIPESTATUS[0]} and so on.
zsh has a roughly identical method.
There's also a rather more annoying, hacky way to do it in strict bourne shells that you can read about in the comp.unix.shell FAQ.
Use PIPESTATUS
myapp | tee log.txt
if [ $PIPESTATUS[0] -eq 0 ]
then .....
you can redirect your output to file instead:
$ myapp > log.txt