この質問を展開すると、次のようになります。文字列の一部だけを保持しながらJSON値の文字列を結合する方法は?
上記のリンク出力には"name"
次のfolder
種類も含まれているため、除外する必要があります"type"
。
"date_added": "13170994909893393",
"date_modified": "13184204204228233",
"id": "2098",
"name": "ElasticSearch",
"sync_transaction_version": "1",
"type": "folder"
無視した場合、"type"
同じオブジェクトのフィールドのみを取得する方法:"url"
出力に含める有効なパターン:
"type": "url",
"url": "https://url_here"
答え1
オブジェクトの配列が与えられたら、を使用してjq
特定の基準を満たすオブジェクトを選択できますselect()
。
試してみるといいと思います。
.array[] | select(.type == "url")
たとえば、JSON文書が与えられた場合
{ "array": [ { "type": "folder", "name": "example folder" },
{ "type": "url", "name": "example url" } ] }
上記のクエリは返されます
{
"type": "url",
"name": "example url"
}