1
我的Json結構如下所示。基於jq json中的where子句提取元素
我該如何提取名稱是使用jq名稱的項目的id?既然你指示輸入
$ jq --arg name "ansible" '.[] | select(.name == $name).id' input.json
我的Json結構如下所示。基於jq json中的where子句提取元素
我該如何提取名稱是使用jq名稱的項目的id?既然你指示輸入
$ jq --arg name "ansible" '.[] | select(.name == $name).id' input.json
假設你的輸入實際上是這些對象的數組,你可以這樣做非常大,您可能需要首先使用。此解決方案將返回找到的第一個匹配的ID,然後停止。
first(.[] | if .name == "ansible" then .id else empty end)
:
JSON文件是非常大的
https://stedolan.github.io/jq/manual/
{
"id": 38,
"name": "ansible",
"path": "ansible",
"description": "Ansible playbooks, roles, and supporting tools repos"
},
{
"id": 18,
"name": "Analytics",
"path": "analytics",
"description": "Big Data Analytics projects"
}