In message <[EMAIL PROTECTED]>, Eric Blake writes: >Peter Seebach <seebs <at> seebs.net> writes: > >> >> In regards to worries about "unset FOO" not working if FOO is not set: >> >> ${FOO+unset FOO} >> >> Is this crazy or clever? It works in Solaris sh. (I know, in most cases, >> it's sufficient to just empty the variable, but sometimes it'd be nice to >> be able to distinguish between empty and unset.) > >No, it does NOT work in Solaris sh (tested on Solaris 8): > >$ /bin/sh -c 'foo=a;${foo+unset foo};echo ${foo+set}' ; echo $? >/bin/sh: bad substitution >1
I think it needs to be in quotes, as with other {x+a b} expansions. I may have tested it in double quotes or something. Or I may just have been confused. -s