Regardless, please consider documenting the script to explain why it does not use -n/-z if that is necessary to avoid bugs.
On 17 July 2013 20:26, Christopher Schultz <ch...@christopherschultz.net> wrote: > Mladen, > > On 7/17/13 1:07 PM, Mladen Turk wrote: >> On 07/17/2013 06:05 PM, sebb wrote: >>> >>> Why not use: >>> >>> if [ "$FOO" != "" ] >>> >> >> Some shells do not allow that (comparing empty strings) > > I don't know of a shell where "$FOO" would be unset and yet expand to > some non-zero-length string in a command. If that were the case, ".$FOO" > would then expand to the same non-zero-length string with a dot > pre-pended to it and the comparison wouldn't work, anyway. > > In my patch, I used a "-z". I'll remove it if there is significant > concern that it is very non-standard. > > Sebb, one reason to use the ".$FOO" trick can be found in O'Reilly's > /Unix Power Tools/. They point out that by testing for "$FOO" like this: > > if [ "$FOO" = "somestring" ] ; > > You run the risk of $FOO expanding to something like "-z" where it would > not result in a string comparison. I like the use of ".$FOO" (leading > dot) because it avoids this issue, but I think it's moot because of the > availability of the "-z" test. > > I couldn't find a man page online for the "test" program (but of course > searching for "test man page" yields completely useless results). > > -chris > --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org