linux 之 jq
1、安装
1 2 3 4 5 6 7 8 | mac 安装: brew install jq centos 安装: yum install jq ubuntu: 安装: apt-get install jq<br><br> |
2、使用
cat test.json
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 | { "Type" : "online_confirm_order_bill" , "Source" : "MEITUAN" , "AreaCode" : 2, "OutCode" : "14769782825369498" , "OutStoreCode" : "586" , "OnlineChannelCode" : 2, "OrderCreateDate" : "2018-12-18 17:50:08" , "Items" : [ { "OutCommodityCode" : "2035253" , "CommodityQty" : 1, "CommodityName" : "品胜1A充电器" , "CommodityPrice" : 3800, "AvailableNum" : 6 }, { "OutCommodityCode" : "2040664" , "CommodityQty" : 1, "CommodityName" : "Z品胜双面USB苹果充电线" , "CommodityPrice" : 3600, "AvailableNum" : 3 } ] } |
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 | jq . test .json { "Type" : "online_confirm_order_bill" , "Source" : "MEITUAN" , "AreaCode" : 2, "OutCode" : "14769782825369498" , "OutStoreCode" : "586" , "OnlineChannelCode" : 2, "OrderCreateDate" : "2018-12-18 17:50:08" , "Items" : [ { "OutCommodityCode" : "2035253" , "CommodityQty" : 1, "CommodityName" : "品胜1A充电器" , "CommodityPrice" : 3800, "AvailableNum" : 6 }, { "OutCommodityCode" : "2040664" , "CommodityQty" : 1, "CommodityName" : "Z品胜双面USB苹果充电线" , "CommodityPrice" : 3600, "AvailableNum" : 3 } ] } |
1 2 3 | <strong>jq .Type test .json< /strong > online_confirm_order_bill |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | jq .Items[] test .json { "OutCommodityCode" : "2035253" , "CommodityQty" : 1, "CommodityName" : "品胜1A充电器" , "CommodityPrice" : 3800, "AvailableNum" : 6 } { "OutCommodityCode" : "2040664" , "CommodityQty" : 1, "CommodityName" : "Z品胜双面USB苹果充电线" , "CommodityPrice" : 3600, "AvailableNum" : 3 } |
1 2 3 4 | jq .Items[].OutCommodityCode test .json "2035253" "2040664" |
1 2 3 | jq .Items[1].OutCommodityCode test .json "2040664" |
1 2 3 4 | jq -r '.Type,.Source' test .json online_confirm_order_bill MEITUAN |
1 2 3 | cat test .json | jq -r '.Type' online_confirm_order_bill |
1 2 3 | cat test .json |jq -c '.Items[]|select(.OutCommodityCode | contains("2035253"))' { "OutCommodityCode" : "2035253" , "CommodityQty" :1, "CommodityName" : "品胜1A充电器" , "CommodityPrice" :3800, "AvailableNum" :6} |
1 2 3 | cat test .json |jq -c '.Items[]|select(.OutCommodityCode | contains("2035253"))' |jq -r '.CommodityPrice' 3800 |
https://stedolan.github.io/jq/manual/#Invokingjq
https://github.com/stedolan/jq/wiki/Cookbook
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通