On Friday 14 May 2010 22:52, Peter Tyser wrote: > On Fri, 2010-05-14 at 15:41 -0500, Rob Landley wrote: > > On Thursday 13 May 2010 18:05:53 Peter Tyser wrote: > > > Using 'read' without a variable is not supported in many shells. Lines > > > such as 'while read; do' in gen_build_files.sh would result in build > > > failures when using sh or dash as an interpreter: > > > > Simple fix: say #!/bin/bash at the top of all shell scripts, always. > > With the exception of fix_ws.sh, all other shell scripts in scripts/ > use /bin/sh. I had assumed this was intentional? Unless there is a > specific bashism that makes gen_build_files.sh much cleaner/better/etc,
"read -r" without argument does not strip leading whitespace from the read line. "read -r REPLY" does. This can be fought with with IFS tricks, which looks ugly (what if you need to restore IFS? brrr): $ (echo " a \ b " | { read -r; echo "[$REPLY]"; }) [ a \ b ] $ (echo " a \ b " | { read -r REPLY; echo "[$REPLY]"; }) [a \ b] $ (IFS=''; echo " a \ b " | { read -r REPLY; echo "[$REPLY]"; }) [ a \ b ] > why not keep it portable? I also personally prefer explicitly > specifying a variable for 'read' instead of using the "magical" REPLY > variable. -- vda _______________________________________________ busybox mailing list busybox@busybox.net http://lists.busybox.net/mailman/listinfo/busybox