我希望使用 jq 自动将包含 json 的任何字段解析为 json,例如:
输入
{
"guaranteedPrizes": "[]",
}
输出
{
"guaranteedPrizes": [],
}
对于通用解决方案,您可能希望考虑walk/1
,并且为了提高效率,请避免fromjson
冗余调用:
walk(if type == "string"
then . as $x | try fromjson catch $x
else . end)
如果您想脱离“深层次”并尝试递归评估 fromjson:
def deep:
walk(if type == "string"
then . as $x
| try (fromjson | deep)
catch $x
else . end);
deep