Bash 使用jq按索引打印多个列表中的元素

Bash 使用jq按索引打印多个列表中的元素,bash,jq,Bash,Jq,我有一个json,有3个相等的列表: { "value": { "list1": [ "el11", "el12", "el13", "el14" ], "list2": [ "el21", "el22", "el23", "el24"

我有一个json,有3个相等的列表:

{
    "value": {
        "list1": [
            "el11",
            "el12",
            "el13",
            "el14"
        ],
        "list2": [
            "el21",
            "el22",
            "el23",
            "el24"
        ],
        "list3": [
            "el31",
            "el32",
            "el33",
            "el34"
        ]
    }
}
我试图从每个列表中提取具有相同索引的元素:

el11 el21 el31
...
el13 el23 el33
理想情况下,这些需要导出为环境值。但我只是想知道jq是否有可能做到这一点。以及如何


谢谢

您可以使用
转置
功能进行此操作。比如说,

$ jq -r '[.value[]] | transpose[] | join (" ")' tmp.json
el11 el21 el31
el12 el22 el32
el13 el23 el33
el14 el24 el34