On Wed, Mar 17, 2021 at 09:58:24PM +0200, Ilkka Virta wrote:
On Wed, Mar 17, 2021 at 8:26 PM Greg Wooledge <greg@wooledge.org> wrote:
I thought, for a moment, that bash already used $'...' quoting for
newlines, but it turns out that's false. At least for declare -p.
It would be nice if it did, though. Newlines, carriage returns, escape
characters, etc.
It does in some cases:
$ a=($'new \n line' $'and \e esc'); declare -p a
declare -a a=([0]=$'new \n line' [1]=$'and \E esc')
But not for string variables, it seems.
unicorn:~$ unset a b; a=($'x\ny') b=$'c\nd'; declare -p a b
declare -a a=([0]=$'x\ny')
declare -- b="c
d"
It would be nice if the string variables were handled the same way as
the array elements.