On Sat, May 05, 2001 at 07:25:35PM -0700, Karsten M. Self wrote: > on Sun, May 06, 2001 at 02:22:40AM +0300, Tommi Komulainen ([EMAIL > PROTECTED]) wrote: > > > > if test "${LANG+set}" = set; then LANG=C; export LANG; fi > > Close, but not quite. It's probably the nearest thing to a winner I've > seen posted though. And you just edged out Alan's suggestion of an > equivalent but opposite test.
Umm, you wanted to test if a variable is set, the test does exactly that, not the opposite. > The possible problem" "*null or* unset". An existing, but null, > environment variable will be reported as unset. hrmpf, I *know* I should've emphasized the following the first time: > > arithmetic expansion. When not performing substring > > expansion, bash tests for a parameter that is unset or > > null; omitting the colon results in a test only for a ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > > parameter that is unset. ^^^^^^^^^^^^^^^^^^^^^^^^ > It's possible to create a null environment variable, e.g.: > > $ foo= > $ echo $foo > > $ echo ${foo:-unset} > unset Let's see... $ foo= $ echo $foo $ echo ${foo-unset} $ echo ${foo+set} set $ unset foo $ echo ${foo-unset} unset $ echo ${foo+set} $ RTFQ ;> -- Tommi Komulainen [EMAIL PROTECTED] GPG 1024D/68388EE6 6FD6 DD79 EB38 BF6F 3533 09C0 04A8 9871 6838 8EE6
pgph4RgNVPza9.pgp
Description: PGP signature