【发布时间】:2019-12-21 20:07:41
【问题描述】:
我正在使用 jq 遍历 JSON 文件,但在 json 值中出现 \u0022 时遇到问题。
jq -c '.node[]' file.json | while read node; do
description=$(jq -r '.description' <<< "$node");
printf '%s\n' "$description";
done
这适用于所有值,但 jq 解码的值在遇到 \u0022 时会导致错误,因为它会转换为双引号。
所以对于值
{"description":"This is my \u0022real\u0022 name"}
jq 将出错:parse error: Invalid numeric literal
如何让jq 不解码实体或忽略或删除它们?
【问题讨论】: