Я ее использую, чтобы машиночитаемый json в одну строку преобразовать в удобочитаемый человеком. Приведу пример на очень маленькой строке, чтобы не засорять сообщение. Чисто для наглядности. Очевидно, что эту утилиту имеет смысл применять, когда строки очень длинные и без обработки с ними работать трудно.
Есть строка:
{"jsonrpc":"2.0","result":"OpenEthereum//v3.1.0-stable","id":67}
Форматируем ее с помощью jq:
echo '{"jsonrpc":"2.0","result":"OpenEthereum//v3.1.0-stable","id":67}' | jq .{ "jsonrpc": "2.0", "result": "OpenEthereum//v3.1.0-stable", "id": 67}Помимо форматирования, можно выполнять и преобразования.
echo '{"jsonrpc":"2.0","result":"OpenEthereum//v3.1.0-stable","id":67}' | jq .id67
Мы вытащили отдельно значение id из всей строки.
Мне чаще всего эта утилита нужна при работе с нодами и при настройке мониторинга в Zabbix с препроцессингом items с json. Раньше пользовался веб версией похожего инструмента, но в консоли быстрее получается.