On Wednesday 08 September 2010 05:56:23 Martin Zajíc wrote: > I have another question about testing error. > I try to make LOG with '{....} 2>&1 | tee $BUILD_DIR/LOG_$PROGRAM.log' > but when I did it how can I test it for errors, becouse '$?' not > working even if the script inside ending with 'exit 1'.
echo "Building section fubar" ( echo " command" > /dev/tty command || (echo "command failed! exit 1) echo " command" > /dev/tty command || (echo "command failed! exit 1) echo " command" > /dev/tty command || (echo "command failed! exit 1) echo " command" > /dev/tty command || (echo "command failed! exit 1) ) > "$BUILD_DIR/LOG_$PROGRAM.log" 2>&1 Run it. You'll see 'tidy' progress. If you want to see the gory details, run 'tail -f -s .1 "$BUILD_DIR/LOG_$PROGRAM.log"' in another window. Oh, wait. I think I know the problem. You are using {} (curly braces) around the code block instead of () (parens). They behave differently. Your script is properly exitting from the {} environment, which is different from your script's environment. Use parens; I think they'll do what you want. -- http://linuxfromscratch.org/mailman/listinfo/lfs-support FAQ: http://www.linuxfromscratch.org/lfs/faq.html Unsubscribe: See the above information page