常用 linux jq 命令语法整理

本文详细整理了Linux中用于JSON数据处理的jq命令的基本语法和常见使用场景,包括筛选、转换、排序等操作,帮助提升JSON数据处理效率。
摘要由CSDN通过智能技术生成

常用 linux jq 命令语法整理

语法 json 命令 result str 说明
. “Hello, world!” jq ‘.’ “Hello, world!”
{“foo”: 42, “bar”: “less interesting data”} jq ‘.foo’ 42 返回对象foo key 值
{“notfoo”: true, “alsonotfoo”: false} jq ‘.foo’ null 对象key不存在,返回null
.[] [1,2,3] jq ‘.[]’ 1
2
3
元素遍历
{“a”: 1, “b”: 2} jq ‘.[]’ 1
2
key 对值遍历
.[<string>] {“foo”: 42} jq .[“foo”] 42 获取key 对应值
.[<value>] [{“name”:“JSON”, “good”:true}, {“name”:“XML”, “good”:false}] jq ‘.[0]’ {“name”:“JSON”, “good”:true} 返回1下标元素
[1,2,3] jq ‘.[-2]’ 2 返回倒数两个位置元素
.[start:end] [“a”,“b”,“c”,“d”,“e”] jq ‘.[2:4]’ [“c”, “d”] 下标开始到下标结束的元素
“abcdefghi” jq ‘.[2:4]’ “cd” 下标开始到下标结束的字符
.[:end] [“a”,“b”,“c”,“d”,“e”] jq ‘.[:3]’ [“a”, “b”, “c”] 首个元素到指定下标元素之间的元素
.[start:] [“a”,“b”,“c”,“d”,“e”] jq ‘.[-2:]’ [“d”, “e”] 指定下标开始到未元素之间的元素
, {“foo”: 42, “bar”: “something else”, “baz”: true} jq ‘.foo, .bar’ 42, “something else” 获取多个key值
{“user”:“stedolan”, “projects”: [“jq”, “wikiflow”]} jq ‘.user, .projects[]’ “stedolan”, “jq”, “wikiflow” b取多个元素的值
[“a”,“b”,“c”,“d”,“e”] jq ‘.[4,2]’ “e”, “c” 取4 和 2 下标元素
| [{“name”:“JSON”, “good”:true}, {“name”:“XML”, “good”:false}] jq ‘.[] | .name’ “JSON”, “XML” 管道
[] {“user”:“stedolan”, “projects”: [“jq”, “wikiflow”]} jq ‘[.user, .projects[]]’ [“stedolan”, “jq”, “wikiflow”] 元素值组成新数组
[1, 2, 3] jq ‘[ .[] | . * 2]’ [2, 4, 6] 元素值组成新数组
{} [{“user”:“stedolan”, “title”: “JQ Primer”}] jq ‘.[] | {user, title} {“user”:“stedolan”, “title”: “JQ Primer”} 组成对象(使用原key名)
[{“user”:“stedolan”, “title”: “JQ Primer”}] jq ‘.[] | {user1: .user, title: .title}’ {“user1”:“stedolan”, “title”: “JQ Primer”} 组成对象
  • 4
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值