{}
如果缺少envvar,我似乎无法得到空的JSON 来回显。我或者}
在输出中设置了尾随符,或者显示了转义符。
bash-3.2$ unset X
bash-3.2$ echo "${X:-{}}"
{}
bash-3.2$ X=y
bash-3.2$ echo "${X:-{}}"
y}
bash-3.2$ echo "${X:-{\}}"
y
bash-3.2$ unset X
bash-3.2$ echo "${X:-{\}}"
{\}
bash-3.2$ echo "${X:-'{}'}"
'{}'
bash-3.2$ X=z
bash-3.2$ echo "${X:-'{}'}"
z
如何正确逃脱?
@SergiyKolodyazhnyy在4.2中已修复;我回想起有关参数扩展运算符后面的单词扩展引用以符合POSIX标准的一些讨论。
—
chepner
echo "${X:-{\}}"
可以正常工作。