С чего начать Первые шаги трек · 15 ступеней
Linux Labs
К статье

jq — обработка JSON в консоли

шпаргалка · jq 1.7 https://lab.dimsanych.ru/ru/wiki/jq/

Шпаргалка

  • jq . pretty
  • jq '.field' значение поля
  • jq '.a.b' значение вложенного поля
  • jq '.arr[]' элементы массива
  • jq -r '.[].name' сырой вывод (скрипты)
  • jq '.[] | select(.x=="y")' фильтр
  • jq -r '.[] | [.id,.name] | @tsv' таблица TSV
  • jq --arg u "$USER" '.[]|select(.name==$u)' shell-переменная в фильтр

Ключи

-r убирает кавычки у строкового результата — без него в скрипт попадёт JSON literal "value", а не value. --arg/--argjson — единственный безопасный способ подставить значение shell-переменной в фильтр: вклеивание переменной в текст фильтра ломается на кавычках и спецсимволах. -s (slurp) нужен, когда вход — поток из нескольких JSON-объектов, а обработать их надо как один массив.

Загрузка…