使用 jq 解释 JSON 中嵌套的 JSON

Use jq to interpret nested JSON in JSON

我希望使用 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