jq命令

0. 命令

jq [option] filter [files]
jq+可选参数+过滤条件+文件位置
过滤参数:
. :格式化json内容
.foo :输出指定属性,使用.嵌套访问字段
.[下标] :输出指定数组元素
.[] :输出指定数组中全部元素
, :多个属性过滤时,使用逗号分隔
| :管道过滤,将指定的数组元素中的某个属性作为过滤条件
注:jq过滤条件都是以.开头

1. 数据增删改

1.1 增

cat lq.txt | jq '. + {d:4}' --在全部元素的基础上增加元素d
cat lq.txt | jq '.data + {d:4}' --在data元素值基础上增加元素d

1.2 删

cat lq.txt | jq 'del(.data.v1)' --删除json中的元素v1

1.3 改

cat lq.txt | jq '.age={dd:5}' --更改age元素的值为{"dd":5}

2. 内置函数

2.1 keys获取json中的所有key

echo '{"a":1,"b":2,"c":3,"d":4}' | jq 'keys' --返回["a","b","c","d"]

2.2 返回元素的长度length

echo '{"a":1,"b":2,"c":3,"d":4}' | jq 'length' --返回元素个数:4
echo '[{"a":1,"c":2}, "string", {"a":2}, null]' | jq '.[] | length' --返回2 6 1 0

3. 管道

cat tmp.json | jq '.[0] | keys'

posted on   开心种树  阅读(513)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示