Greg Wooledge wrote: > Mike Frysinger wrote: > > can't tell if this is a bug or a feature. > > > > FOO= BAR=bar > > : ${FOO:=${BAR}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} > > echo $FOO > > > > i'd expect an error, or FOO to contain those excess braces. instead, FOO > > is > > just "bar". > > imadev:~$ : ${FOO:=BAR}qqqqqqqqqqqq > imadev:~$ echo "$FOO" > BAR > > It looks OK to me. You've got an argument word which happens to contain > a substitution-with-side-effects as part of it.
Or slightly differently expressed it is this too: $ echo ${FOO:=BAR}qqqqqqqqqqqq BARqqqqqqqqqqqq $ echo ${FOO:=BAR}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} BAR}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} $ echo ${FOO:=${BAR}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} Seems reasonable to me. In that context the bracket isn't special in any way and is just another character in the string. Just like this: $ echo }}}} }}}} Bob