Tôi dường như không thể nhận được một JSON trống {}
để lặp lại nếu thiếu một envvar. Tôi có một dấu }
ở đầu ra nếu được đặt hoặc thoát hiển thị.
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
Làm thế nào để tôi thoát khỏi nó một cách chính xác?
echo "${X:-{\}}"
chỉ hoạt động tốt.