全局
cat t.json
{
"env_AB":{
"DB_PATH":"/bin/data",
"DB_NAME":"aa.db",
"RULE_DB":[
{
"RULE_DB_1":"bb_rules1.db",
"RULE_DB_2":"bb_rules2.db",
"RULE_DB_3":"bb_rules3.db",
"RULE_DB_4":"bb_rules4.db"
}
]
}
}
一、参数说明
-r: 去掉结果中的 " 双引号
-c: 在一行显示
二、函数说明
length: 统计键(值)总数
type: 获取元素类型
三、示例
1、显示所有值
1)以方便阅读形式显示
cat t.json | jq
2)一行显示值
cat t.json | jq -c
2、获取主键(keys)
cat t.json | jq 'keys'
3、获取子键(keys)
cat t.json | jq ".env_AB| keys"
4、获取子键(keys) ,去掉 [] 方括号
cat t.json | jq ".env_AB| keys[] "
5.显示所有子值(value)
cat t.json | jq '.env_AB[]'
cat t.json | jq '.env_AB'
6、去掉所有值 的双引号
cat t.json | jq -r .env_AB[]
7、统计键值总数
cat t.json | jq length
cat t.json | jq ".env_AB | length"
8、获取指定键的值
cat t.json | jq ".env_AB.DB_PATH"
9、获取元素类型
cat t.json | jq ".env_AB| type"
10、取 [] 方括号中的值
cat t.json | jq ".env_AB.RULE_DB[]"
或
cat t.json | jq ".env_AB.RULE_DB[0]"
json文件中 env_AB里只有一个带方括号的 RULE_DB ,因为 json 是从0开始,所以是写 [0]
3、
参考、来源:
https://www.jianshu.com/p/98b1b3ce2e29