| On Oct 27, 2000, Akim Demaille <[EMAIL PROTECTED]> wrote:
| > ----------------------------------------
| > default="a b c"
| > : ${list1=$default}
| > : ${list2="$default"}
|
| > echo "$list1" | cat -v
| > echo "$list2" | cat -v
| > ----------------------------------------
|
| > gives two different results?
|
| Nope, I get the same output for both lines. Why would it be
| different?
:(
I was expecting to see some M- appear. In fact my idea was that if
there is no IFS splitting happening, it's because indeed there are no
IFS characters in there: the spaces have actually their 8bit set.
But maybe the quotes used in the echo reestablish the 8th bit? Maybe
default="a b c"
: ${list1=$default}
: ${list2="$default"}
echo $list1 | cat -v
echo $list2 | cat -v
demonstrates it? Or maybe it is `cat -v' that doesn't and od should
be used.
| > How do these guy behave?
|
| > ----------------------------------------
| > default="a b c"
| > : list1=${list1-$default}
| > : list2=${list2-"$default"}
|
| > echo "$list1" | cat -v
| > echo "$list2" | cat -v
| > ----------------------------------------
|
| This won't even set list1 and list2, since `:' == `true' will be run
| with `list[12]=...', which is not what you want. Removing `:', I get
| the expected output.
Yes, sorry, that was a typo.