【发布时间】:2017-06-13 08:23:54
【问题描述】:
我有以下两条 bash 行
TMPFILE="$(mktemp)" || exit 1
< package.json jq '. + {"foo":'"${BOO}"'}' > "$TMPFILE"
但我收到以下错误:
jq: error: syntax error, unexpected '}' (Unix shell quoting issues?) at <top-level>, line 1:
. + {"foo":}
jq: 1 compile error
知道如何通过在此处添加双引号以使 shellcheck 错误静音来正确转义该部分
【问题讨论】:
-
变量BOO的内容是什么? - 好的,它是空的,所以语法错误,因为 jq 命令中没有引号(引号是此命令中 bash 的语法,除了 foo 周围的引号)