Skip to content

jq

一.介绍

jq 是一个轻量级且灵活的命令行 JSON 处理器。它可以从标准输入或文件中读取 JSON 数据,并对其进行各种操作,如过滤、转换、查询等。jq 的语法类似于 JavaScript,但专门用于处理 JSON 数据。

二.安装

在大多数 Linux 发行版中,可以使用包管理器安装 jq。例如,在 Ubuntu 上,可以使用以下命令安装 jq:

bash
sudo apt-get install jq

三.使用方法

1.基本用法

bash
jq '.' file.json

该命令将读取文件.json 中的 JSON 数据,并输出所有数据。如果json数据格式错误,jq 将会返回错误信息。

2.过滤 JSON 数据

bash
jq '.name' file.json

该命令将读取文件.json 中的 JSON 数据,并输出 name 字段的值。

3.转换 JSON 数据

bash
jq '.name = "John"' file.json

该命令将读取文件.json 中的 JSON 数据,将 name 字段的值改为 "John",并输出转换后的数据。

4.查询 JSON 数据

bash
jq '.name | contains("John")' file.json

该命令将读取文件.json 中的 JSON 数据,查询 name 字段中是否包含 "John",并输出查询结果。

5.查询多级字段下的字段值

bash
jq '.class.name' file.json

该命令将读取文件.json 中的 JSON 数据,查询 class 字段下的 name 字段,并输出查询结果。

6.组合查询操作

bash
jq '.name | contains("John") and .age > 30' file.json

该命令将读取文件.json 中的 JSON 数据,查询 name 字段中是否包含 "John" 且 age 字段的值是否大于 30,并输出查询结果。

四.总结

jq 是一个强大的命令行 JSON 处理工具,可以轻松地读取、过滤、转换和查询 JSON 数据。通过掌握 jq 的基本用法,可以大大提高处理 JSON 数据的效率。