JQ команда для получения только заголовков

с использованием bash -

    while read x ; do set $x ; first=$1 ; shift; for i in $* ; do echo $first  $1; shift; done  ; done  < /tmp/1
    A B
    A C
    1 2
    1 3
    1 4
0
09.10.2018, 19:55
1 ответ

Запрос '.[] | {title}'даст вам только элементы заголовка (, но обратите внимание, что ваш образец документа кажется искаженным ), если предположить, что ваш документ находится в файле с именемdata.json:

$ jq '.[] | {title}' data.json
{
    "title": "Painted Dragon Tea Mug with Lid"
}

Первая часть запроса, '.[]', возвращает все объекты в массиве верхнего -уровня, которые затем передаются во вторую часть с помощью оператора |. Вторая часть запроса, {title}, просто извлекает из объекта элемент title.

Если вам нужен только заголовок в виде строки без переноса результатов в объект JSON, используйте вместо этого:

$ jq '.[] |.["title"]' data.json
"Painted Dragon Tea Mug with Lid"

Учебникjqпредлагает хороший обзор языка запросов.

2
28.01.2020, 02:31

Теги

Похожие вопросы