Arrays 如何从json文件中提取布尔值?

Arrays 如何从json文件中提取布尔值?,arrays,json,jq,Arrays,Json,Jq,我正在使用jq解析器将json转换为csv 输入: "abc":{ "a_val":true }, "def":{ "b_val":false }, "normaltext":{ "c_val":"text_value" } 我的产量越来越低 ,,"text_value" 但我的愿望是输出 "true", "false", "text_value" 或 请帮忙。 提前谢谢 如图所示的输入不是非常有效的JSON。下面假设已经添加了周围的大

我正在使用jq解析器将json转换为csv

输入:

"abc":{
      "a_val":true
   },
"def":{
      "b_val":false
   },
"normaltext":{
      "c_val":"text_value"
   }
我的产量越来越低

,,"text_value"
但我的愿望是输出

"true", "false", "text_value"

请帮忙。 提前谢谢

  • 如图所示的输入不是非常有效的JSON。下面假设已经添加了周围的大括号,以便生成有效的JSON

  • 以下jq查询生成所需的CSV:

  • 打字稿 如果这不起作用:

    jq -r '[.abc.a_val, .def.b_val, .normaltext.c_val] | @csv' jsonfile
    
    然后试试这个:

    jq -r '[(.abc.a_val | tostring), (.def.b_val | tostring), .normaltext.c_val] | @csv' jsonfile
    

    请发布您正在使用的
    jq
    命令。您可以更具体一些吗?你在用什么?你做了什么?对不起,这门课我是新手。但我可以告诉您我用于json解析的代码。cat | jq-r'[.abc.a_val、.def.b_val、.normaltext.c_val]@csv'我可以解析其他值,但我只面临布尔值问题,可能是因为它们不包含双引号,所以我的代码无法将这些真/假值提取为字符串。我无法提取布尔值。。我得到这个输出->,“文本值”
    $ jq -r '[.abc.a_val, .def.b_val, .normaltext.c_val] | @csv' input.json
    true,false,"text_value"
    
    jq -r '[.abc.a_val, .def.b_val, .normaltext.c_val] | @csv' jsonfile
    
    jq -r '[(.abc.a_val | tostring), (.def.b_val | tostring), .normaltext.c_val] | @csv' jsonfile