linux中jq的使用方法,linux使用jq工具解析json

jq类似一个awk或grep一样的神器,可以方便地在命令行操作json

一、安装

官网:https://stedolan.github.io/jq/download/

基本就是brew install、apt install、yum install之类的,很简单

二、常用操作

1.格式化json

直接请求

格式如下,不易读

➜ ~ curl -s http://t.weather.sojson.com/api/weather/city/101310215

{"message":"success感谢又拍云(upyun.com)提供CDN赞助","status":200,"date":"20191025","time":"2019-10-25 11:17:41","cityInfo":{"city":"万宁市","citykey":"101310215","parent":"海南","updateTime":"09:59"},"data":{"shidu":"92%","pm25":20.0,"pm10":49.0,"quality":"优","wendu":"25","ganmao":"各类人群可自由活动","forecast":[{"date":"25","high":"高温 29℃","low":"低温 23℃","ymd":"2019-10-25","week":"星期五","sunrise":"06:35","sunset":"18:10","aqi":44,"fx":"无持续风向","fl":"<3级","type":"中雨","notice":"记得随身携带雨伞哦"},{"date":"26","high":"高温 29℃","low":"低温 23℃","ymd":"2019-10-26","week":"星期六","sunrise":"06:35","sunset":"18:09","aqi":31,"fx":"无持续风向","fl":"<3级","type":"小雨","notice":"雨虽小,注意保暖别感冒"},{"date":"27","high":"高温 29℃","low":"低温 23℃","ymd":"2019-10-27","week":"星期日","sunrise":"06:36","sunset":"18:09","aqi":28,"fx":"无持续风向","fl":"<3级","type":"小雨","notice":"雨虽小,注意保暖别感冒"},{"date":"28","high":"高温 30℃","low":"低温 22℃","ymd":"2019-10-28","week":"星期一","sunrise":"06:36","sunset":"18:08","aqi":34,"fx":"东北风","fl":"3-4级","type":"小雨","notice":"雨虽小,注意保暖别感冒"},{"date":"29","high":"高温 27℃","low":"低温 22℃","ymd":"2019-10-29","week":"星期二","sunrise":"06:36","sunset":"18:07","aqi":35,"fx":"东北风","fl":"3-4级","type":"小雨","notice":"雨虽小,注意保暖别感冒"},{"date":"30","high":"高温 27℃","low":"低温 22℃","ymd":"2019-10-30","week":"星期三","sunrise":"06:37","sunset":"18:07","aqi":32,"fx":"无持续风向","fl":"<3级","type":"中雨","notice":"记得随身携带雨伞哦"},{"date":"31","high":"高温 29℃","low":"低温 22℃","ymd":"2019-10-31","week":"星期四","sunrise":"06:37","sunset":"18:06","fx":"东北风","fl":"3-4级","type":"中雨","notice":"记得随身携带雨伞哦"},{"date":"01","high":"高温 25℃","low":"低温 24℃","ymd":"2019-11-01","week":"星期五","sunrise":"06:38","sunset":"18:06","fx":"东北风","fl":"3-4级","type":"小雨","notice":"雨虽小,注意保暖别感冒"},{"date":"02","high":"高温 25℃","low":"低温 24℃","ymd":"2019-11-02","week":"星期六","sunrise":"06:38","sunset":"18:05","fx":"东北风","fl":"4-5级","type":"小雨","notice":"雨虽小,注意保暖别感冒"},{"date":"03","high":"高温 26℃","low":"低温 24℃","ymd":"2019-11-03","week":"星期日","sunrise":"06:38","sunset":"18:05","fx":"东风","fl":"3-4级","type":"小雨","notice":"雨虽小,注意保暖别感冒"},{"date":"04","high":"高温 25℃","low":"低温 24℃","ymd":"2019-11-04","week":"星期一","sunrise":"06:39","sunset":"18:04","fx":"东北风","fl":"<3级","type":"小雨","notice":"雨虽小,注意保暖别感冒"},{"date":"05","high":"高温 28℃","low":"低温 24℃","ymd":"2019-11-05","week":"星期二","sunrise":"06:39","sunset":"18:04","fx":"东南风","fl":"<3级","type":"小雨","notice":"雨虽小,注意保暖别感冒"},{"date":"06","high":"高温 25℃","low":"低温 21℃","ymd":"2019-11-06","week":"星期三","sunrise":"06:40","sunset":"18:04","fx":"东北风","fl":"3-4级","type":"小雨","notice":"雨虽小,注意保暖别感冒"},{"date":"07","high":"高温 23℃","low":"低温 22℃","ymd":"2019-11-07","week":"星期四","sunrise":"06:40","sunset":"18:03","fx":"东北风","fl":"3-4级","type":"小雨","notice":"雨虽小,注意保暖别感冒"},{"date":"08","high":"高温 25℃","low":"低温 22℃","ymd":"2019-11-08","week":"星期五","sunrise":"06:41","sunset":"18:03","fx":"北风","fl":"3-4级","type":"多云","notice":"阴晴之间,谨防紫外线侵扰"}],"yesterday":{"date":"24","high":"高温 29℃","low":"低温 23℃","ymd":"2019-10-24","week":"星期四","sunrise":"06:34","sunset":"18:10","aqi":27,"fx":"无持续风向","fl":"<3级","type":"多云","notice":"阴晴之间,谨防紫外线侵扰"}}}

使用jq格式化,如下

curl -s http://t.weather.sojson.com/api/weather/city/101310215 | jq

{

"message": "success感谢又拍云(upyun.com)提供CDN赞助",

"status": 200,

"date": "20191025",

"time": "2019-10-25 10:27:28",

"cityInfo": {

"city": "万宁市",

"citykey": "101310215",

"parent": "海南",

"updateTime": "09:59"

},

"data": {

"shidu": "92%",

"pm25": 20,

"pm10": 49,

"quality": "优",

"wendu": "25",

"ganmao": "各类人群可自由活动",

"forecast": [

{

"date": "25",

"high": "高温 29℃",

"low": "低温 23℃",

"ymd": "2019-10-25",

"week": "星期五",

"sunrise": "06:35",

"sunset": "18:10",

"aqi": 44,

"fx": "无持续风向",

"fl": "<3级",

"type": "中雨",

"notice": "记得随身携带雨伞哦"

},...

已经格式化过

2.取指定字段的值

直接输入字段,使用.嵌套访问,如要获取昨天的信息

curl -s http://t.weather.sojson.com/api/weather/city/101310215 | jq .data.yesterday

{

"date": "24",

"high": "高温 29℃",

"low": "低温 23℃",

"ymd": "2019-10-24",

"week": "星期四",

"sunrise": "06:34",

"sunset": "18:10",

"aqi": 27,

"fx": "无持续风向",

"fl": "<3级",

"type": "多云",

"notice": "阴晴之间,谨防紫外线侵扰"

}

3.过滤指定字段

使用一个json指定所有字段,如{date, high},获取昨天的最高温度如下

curl -s http://t.weather.sojson.com/api/weather/city/101310215 | jq .data.yesterday|jq "{date,high}"

{

"date": "24",

"high": "高温 29℃"

}

4.获取多个字段的值

使用逗号获取多个

curl -s http://t.weather.sojson.com/api/weather/city/101310215 | jq .data.yesterday|jq ".date, .high"

"24"

"高温 29℃"

5.筛选数组

直接指定数组的索引即可

curl -s http://t.weather.sojson.com/api/weather/city/101310215 |jq ".data.forecast"|jq ".[0,9]"

{

"date": "25",

"high": "高温 29℃",

"low": "低温 23℃",

"ymd": "2019-10-25",

"week": "星期五",

"sunrise": "06:35",

"sunset": "18:10",

"aqi": 44,

"fx": "无持续风向",

"fl": "<3级",

"type": "中雨",

"notice": "记得随身携带雨伞哦"

}

{

"date": "03",

"high": "高温 26℃",

"low": "低温 24℃",

"ymd": "2019-11-03",

"week": "星期日",

"sunrise": "06:38",

"sunset": "18:05",

"fx": "东风",

"fl": "3-4级",

"type": "小雨",

"notice": "雨虽小,注意保暖别感冒"

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/344306.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux手机摩托,Linux操作系统触控智能机 摩托ZN4图赏

北京时间2008年11月25日&#xff0c;有国外的网友拿到由通信运营商Verizon Wireless定制的摩托罗拉ZN4真机。摩托罗拉ZN4的发布已经过了一个多月了&#xff0c;网友们对于这款手机的评论可谓是褒贬不一。有的朋友们指出摩托罗拉ZN4在造型上面抄袭了经典“明”系列设计&#xff…

Apache Camel 2.23发布

昨天发布了Apache Camel 2.23 &#xff0c;其中最值得注意的新功能是对Spring Boot 2.1的支持&#xff0c;我们还改进了启动器组件以包括更多的元数据&#xff0c;并对改进的Spring Boot自动配置进行了优化。 此版本主要是一个大的错误修复版本和一些其他小的新增功能。 这些功…

对c语言字符数组描述错误的是,下述对C语言字符数组的描述中错误的是( )。

摘要&#xff1a;条形图用频率值型来表分组分布示数数据&#xff0c;下述没有相邻之间间隔竖条。中国:在中大学列联分析&#xff0c;字符百分表的条件正确关于的是方向说法。条形图用频率值型来表分组分布示数数据&#xff0c;数组述中没有相邻之间间隔竖条。...条形图用频率值…

android 实现自动拍照,Android自定义相机实现定时拍照功能

这篇博客为大家介绍Android自定义相机&#xff0c;并且实现倒计时拍照功能。首先自定义拍照会用到SurfaceView控件显示照片的预览区域&#xff0c;以下是布局文件&#xff1a;activity_main.xmlandroid:layout_width"match_parent"android:layout_height"match_…

10个步骤的筛选器模式

过滤器是仅在某些情况下应应用的模式。 在原始帖子中 &#xff0c;我提供了一个非常简单的示例&#xff0c;旨在演示如何应用它。 在这篇文章中&#xff0c;我提供了一个更详细的示例&#xff0c;该示例还旨在说明何时以及为什么应用它。 介绍 该职位包括以下10个简短步骤 。…

android 网络调试工具,安卓网络调试助手

安卓网络调试助手源码是一款专门为专业人士准备的安卓网络调试软件&#xff0c;安卓网络调试助手apk支持各种进制的转换发生和多种端口协议&#xff0c;让用户操作起来更加方便&#xff0c;安卓网络调试助手源码有着专业的操作流程&#xff0c;帮助用户快速上手&#xff0c;就算…

android版本8.1.0和9的区别,安卓8.1和9.0的区别是什么

安卓8.1和9.0的主要差别是&#xff1a;流畅度、耗电量、功能等等方面的不同。在手机配置足够的情况下&#xff0c;9.0要比8.1更流畅和省电&#xff0c;它可以同时让后台保持更多APP&#xff0c;每个APP运行的时候更加流畅&#xff0c;其新的智能电量管理功能、暗黑模式让手机更…

看到一个沙粒世界:再一次你好世界

“看到一个沙粒中的世界”&#xff0c;我们很可能会看到最简单的“ Hello World”中的世界&#xff0c;所以我们开始吧&#xff0c;再一次向世界问好。 我猜所有的Java课程&#xff0c;教程都是从这个著名的Hello World程序开始的&#xff0c;这是我可以在没有IDE的帮助下编写…

[渝粤教育] 西南科技大学 中国现代文学 在线考试复习资料

中国现代文学——在线考试复习资料 一、单选题 1.不属于“五四”时期的“问题小说”作家的是( )。 A.冰心 B.庐隐 C.刘呐鸥 D.王统照 2.巴金小说《家》中的觉新是( )。 A.顽固的封建卫道者 B.腐朽堕落者 C.有新思想的懦弱者 D.与封建思想大胆斗争的反抗者 3.《画梦录》的作者…

[渝粤教育] 西南科技大学 中学英语教材教法 在线考试复习资料

中学英语教材教法——在线考试复习资料 一、单选题 1.关于写作评估以下说法正确的是? A.写作评估既要有结果评估,也要有过程评估 B.写作教学评估有写长法又有写短法 C.课堂评估的作用仅为监控学生 D.课堂评估与课堂的具体教学内容有关,可以使用统一的评估模式 2.以下哪种方式…

moreunit_MoreUnit与MoreUnit

moreunit就在一年多以前&#xff0c;我写了一篇关于在Eclipse中使用JUnit的文章。 评论者之一推荐MoreUnit &#xff0c;以进一步提高测试效率。 尝试一下让我感到很高兴&#xff0c;并且我的自主神经系统立即记住了该插件的键盘快捷键…… 另外&#xff0c;在使用MoreUnit一段…

[渝粤教育] 西南科技大学 人力资源管理 在线考试复习资料(1)

人力资源管理——在线考试复习资料 一、单选题 1.实施工作轮换方案之前要做好的工作不包括( ) A.复查每一个连续在同一职业岗位上于了5年以上.特别是更长时间的、正处于职业中期的员工(包括经理在内) 的人事文件 B.评价这些员工的工作,认清其工作专长,了解其个人特征、才干等 C…

android 获取 meid 代码,Android 各个版本获取IMEI、MEID

public class IMEIUtil {/*** 获取默认的imei 一般都是IMEI 1** param context* return*/public static String getIMEI1(Context context) {//优先获取IMEI(即使是电信卡) 不行的话就获取MEIDreturn getImeiOrMeid(context, 0);}/*** 获取imei2** param context* return*/publ…

JMetro版本5发布

Java的第5版JavaFX主题JMetro刚刚发布。 这是此版本中的新功能&#xff1a; 新的文本区域明暗风格&#xff1b; 现有控件样式的一些更改&#xff1b; 新CSS变量称为accent_color。 顾名思义&#xff0c;它允许您定义JMetro控件中使用的强调颜色。 已经进行了很大的重构&am…

[渝粤教育] 西南科技大学 会计学原理 在线考试复习资料(1)

会计学原理——在线考试复习资料 一、单选题 1.资产负债表是反映企业( )财务状况的会计报表。 A.某一特定日期 B.一定时期内 C.某一月份内 D.某一年份内 2.某企业本期盘亏的材料已查明原因,属于自然损耗,批准处理时应编制的会计分录( )。 A.借记“待处理财产损溢”,…

android 开发 矩形截屏插件,Android 上如何实现矩形区域截屏

对屏幕进行截屏并裁剪有两种方式&#xff1a;早截图和晚截图。早截图&#xff0c;就是先截取全屏&#xff0c;再让用户对截取到的图片进行修改;与之相对的&#xff0c;晚截图&#xff0c;就是先让用户在屏幕上划好区域&#xff0c;再进行截图和裁剪。其实两者并没有什么太大的区…

[渝粤教育] 西南科技大学 供应链管理 在线考试复习资料

供应链管理——在线考试复习资料 一、单选题 1.人们设置库存的目的,不包括以下哪种? A.增加固定资产 B.防止缺货 C.保持生产连续性 D.快速满足订货需求 2.费希尔(Fisher)按市场需求模式将产品分为两类,即功能性产品和创新性产品。下面属于功能性产品的是: A.时装 B.石油 C.手…

[渝粤教育] 西南科技大学 信息组织与检索 在线考试复习资料2021版

信息组织与检索——在线考试复习资料2021版 一、单选题 1.要求两个关键词至少有一个出现在检索结果中需使用的操作符是( )。 A. ND B. OR C. ND NOT D. NEAR 答案:看左边查询 2.要求两个关键词都必须出现在检索结果中需使用的操作符是( )。 A. ND B. OR C. ND NOT D. NE…

Android布局怎么画图形,Android开发者的图形化布局

图形化布局编辑器允许你通过拖放来创建UI。在早期版本的ADT中&#xff0c;图形化布局编辑器并不是很有帮助&#xff0c;幸运的是&#xff0c;最新版本非常强大&#xff0c;可以用来创建复杂的包含有复合组件以及动画的布局。(1)Configuration下拉菜单让你可以改变当前布局展示的…

java注释类型_Java 8类型注释

java注释类型Lambda表达式是迄今为止Java 8讨论最多和最受促进的功能。虽然我同意Lambda是一个很大的改进&#xff0c;但我认为其他一些Java 8功能由于Lambda的炒作而有所欠缺。 在这篇文章中&#xff0c;我想展示另一个来自Java 8的出色特性的示例&#xff1a;Type Annotation…