Linux下解析JSON主要用jq工具,它轻量强大、支持管道;安装后可用.key提取字段、-r原始输出、select()过滤、.[]展开数组等操作处理嵌套与数组数据。

Linux 下解析 JSON 主要用 jq,它轻量、强大、支持管道,是命令行处理 JSON 的事实标准。
大多数发行版自带包管理器可一键安装:
sudo apt install jq
sudo yum install jq 或 sudo dnf install j
q
brew install jq
装完运行 jq --version 确认是否就绪。
jq 的核心是“过滤器”,用点号 . 表示当前对象,用 .key 提取字段,用 .[index] 取数组元素。
例如有文件 user.json:
Artflow.ai
可以使用AI生成的原始角色、场景、对话,创建动画故事。
92
查看详情
{
"name": "Alice",
"age": 30,
"hobbies": ["reading", "cycling"]
}
提取姓名:jq '.name' user.json → "Alice"
提取年龄并去掉引号(用 -r 原始输出):jq -r '.age' user.json → 30
取第一个爱好:jq -r '.hobbies[0]' user.json → reading
实战中常需筛选、重组或拼接数据:
jq 'select(.age > 25)' users.json(保留 age 大于 25 的条目)jq -c '.' data.json
jq '{username: .name, years: .age}' user.json
jq -r '.name + " is " + (.age|tostring) + " years old"' user.json
配合 curl 使用很常见,比如查公网 IP:curl -s https://httpbin.org/ip | jq -r '.origin'
JSON 经常多层嵌套或含数组。用 .[] 展开数组,| 连接多个操作:
[
{"id": 1, "tags": ["web", "linux"]},
{"id": 2, "tags": ["cli", "json"]}
]
列出所有 tag:jq '.[].tags[]' data.json
只取含 "linux" 的项:jq 'map(select(.tags[] == "linux"))' data.json
统计 tag 总数:jq '[.[]|.tags|length]|add' data.json
基本上就这些。jq 不复杂但容易忽略细节,多练几个真实 JSON 就上手了。
以上就是Linux 怎么解析 JSON?jq 实战教程的详细内容,更多请关注其它相关文章!
相关文章:
抖音小游戏合成大西瓜免费秒玩入口链接 抖音小游戏热门合集秒玩网站
微信商城在哪里打开【步骤】
期待已久:小米17 Ultra、小米首款NAS本月登场
深入理解与实现最大堆的Heapify过程:常见错误与修正
怎么搭建一个php网站源码_搭php网站源码搭建教程
Lar*el Form Request中唯一性验证在更新操作中的正确实现
LINUX怎么设置定时任务_LINUX crontab配置教程
PHP表单提交消息延迟显示:Post-Redirect-Get模式深度解析与实践
如何在CSS中使用浮动制作导航栏_float实现水平菜单
CSS Box Model与弹性按钮:维持布局稳定的动画实践
向日葵客户端怎么进行远程CentOS控制_向日葵客户端远程CentOS控制操作教程
excel怎么提取文本中数字 excel函数提取技巧
Log4j Console Appender性能瓶颈与高并发优化策略
Yandex免登录官网入口_俄罗斯Yandex搜索引擎直达链接
126邮箱账号注册 电脑版登录入口
Lar*el 中按“Has One Of Many”关联模型排序的最佳实践
基于多条件高效更新SQL表:利用CASE表达式优化业务逻辑
中兴BladeV30怎样用测距估书架层高_iPhone中兴BladeV30测距估书架层高【家装参考】
谷歌浏览器最新官方入口链接 谷歌浏览器网页版官网导航
J*a递归快速排序中静态变量的状态管理与陷阱
AWS EC2实例间SQL Server连接超时:安全组配置与故障排除指南
PHP面向对象编程中避免重复创建PDO数据库连接的最佳实践
Win10怎么设置静态IP地址 Win10手动配置IP地址步骤【指南】
Win11 BitLocker密码忘了怎么办 Win11找回BitLocker恢复密钥方法【解决】
虫虫漫画精品漫画官网_虫虫漫画精品漫画官网进入精品漫画
如何高效处理PHP中的Excel数据导入导出?PortPHP/Spreadsheet助你轻松搞定!
Win11怎么隐藏桌面图标 Win11一键隐藏所有桌面元素及恢复显示
铃兰之剑为这和平的世界希里技能组及加点推荐
Golang如何实现状态模式管理对象状态_Golang State模式实现技巧
AO3最新可访问网址 Archive of Our Own官方在线入口
文心一言怎样用插件调度API数据_文心一言用插件调度API数据【API调用】
4399体育竞技小游戏_4399小游戏赛事入口
Mac怎么查看崩溃日志_Mac控制台错误报告分析
Composer的 "check-platform-reqs" 命令有什么用_在部署前检查生产环境是否满足Composer依赖需求
优化 Jest 模拟:强制未实现函数抛出错误以提升测试效率
PHP高效扁平化嵌套数组:使用array_merge与数组解包操作符
印象笔记怎样用批量导出备知识库_印象笔记用批量导出备知识库【备份方法】
PHP实现即时文章发布与单次数据库写入:自提交模式教程
极速漫画官方主页网址 极速漫画漫画在线浏览官网链接
Pyrogram与g4f集成:异步编程实践与常见错误解决
C++20的source_location是什么_C++在编译期获取源码位置信息用于日志和断言
动漫岛观看全网网 动漫岛在线正版动漫入口
mcjs网页版流畅运行 mcjs低配电脑畅玩入口
2025俄罗斯Yandex最新入口 官方网站地址及浏览器下载指南
PHP表单提交后函数重复执行的解决方案:管理$_POST数据
lar*el怎么安全地存储和获取配置文件中的敏感信息_lar*el敏感信息安全存储方法
php源码怎么在电脑上测试_电脑测试php源码方法步骤【教程】
在React函数组件中利用原生HTML5进行邮箱地址验证
Windows 11怎么彻底关闭定位_Windows 11服务中禁用Geolocation
优化Django表单:提交验证失败后保留用户输入