>_ IzzyLab

Практическое задание

jq: пересборка объектов

средне

/root/products.json — массив объектов с id и price. Собери новый JSON-массив, где у каждого элемента поле id и поле price_with_tax = price * 1.2. Результат — в /root/taxed.json.

Что потренируешь:
  • jq
  • конструирование объектов
  • арифметика в jq
  • работа с массивами
  • json

Разбор темы

В jq фильтр не только достаёт данные, но и строит новые структуры: конструктор {...} собирает объект из выбранных полей, а значением поля может быть любое вычисляемое выражение, включая арифметику над исходными полями. Ключевая идея — понимать разницу между потоком значений и массивом: перебор .[] разворачивает массив в поток отдельных элементов, а внешние квадратные скобки вокруг фильтра снова собирают этот поток в JSON-массив. Так из массива входных объектов получается массив пересобранных.

Что проверяется

  1. у каждого элемента id и price_with_tax = price*1.2

Как это выглядит