Linux 命令之 jq
文章目录
- 一、命令解析
- 二、命令安装
- 三、命令语法
- 四、命令使用
一、命令解析
jq
命令允许直接在命令行下对 JSON
进行操作,包括分片、过滤、转换等。有点类似于 Lambda
表达式的 Stream
流的操作。
二、命令安装
基于 CentOS7
的安装方式
通过
yum
安装# 安装EPEL源 yum install epel-release# 查看下jq包是否存在 yum list jq# 安装jq yum install jq
通过官网安装包安装
# 解压 tar.gz 包进入目录 # 编译安装 ./configure && make && make install
三、命令语法
语法格式
# jq + 可选参数 + 过滤条件 + 文件位置 jq [options] filter [files]
操作参数
**options:**--version:输出jq的版本信息并退出 --slurp/-s:读入整个输入流到一个数组。 --raw-input/-R:不作为JSON解析,将每一行的文本作为字符串输出到屏幕。 --null-input/ -n:不读取任何输入,过滤器运行使用null作为输入。一般用作从头构建JSON数据。 --compact-output /-c:使输出紧凑,而不是把每一个JSON对象输出在一行。 --colour-output / -C:打开颜色显示 --monochrome-output / -M:关闭颜色显示 --ascii-output /-a:指定输出格式为ASCII -raw-output /-r :如果过滤的结果是一个字符串,那么直接写到标准输出(去掉字符串的引号)
过滤参数
**filter:** . : 默认输出 .foo: 输出指定属性,foo代表属性。 .[foo] :输出指定数组元素。foo代表数组下标。 .[]:输出指定数组中全部元素 , :指定多个属性作为过滤条件时,用逗号分隔 | : 将指定的数组元素中的某个属性作为过滤条件**files:**JOSN格式文件。
四、命令使用
测试
JSON
格式数据[{"hostCompany":"Beijing Autelan Technology","hostModel":"CS-VIC-2000-C","hostsn":"01010730b12014A00477","mac":"00:1F:64:CE:F3:8E","cpuModel":"MIPS 74Kc V4.12","cpuSN":"000000","memoryModel":"abcdefg","memorySN":"000000","boardSN":"01010730b12014A00477","networkCardMac":"00:1F:64:CE:F3:8F","lowFreModel":"AR9344","lowFreSN":"000000","hignFreModel":"AR9582","hignFreSN":"000000","gpsModel":"abcdefg","gpsSN":"000000","MEID_3g":"A000004E123ABD2","Company_3g":"ZTEMT INCORPORATED","modelOf3g":"MC271X","snOf3g":"A000004E123ABD2","iccid":"89860314400200885980","Operators":"CTCC","hardVersion":"1.20","firmwareVersion":"1.0.6.29"}]
格式化
JSON
内容.
通过
. + key
获取对应的值,如果JSON
串有层级,可以不断深入.[].hostCompany
多个输出对象一起过滤
.[].hostCompany, .[].hostModel
多个连接管道
.[] | .hostModel , .hostCompany
jq 1.6 在线解析界面
Linux 命令之 jq相关推荐
- linux命令下jq的用法(curl 格式化输出json 字符串)
文章目录 一.什么是jq命令 1. jq安装 2. jq命令的格式 从json文件 对象数组中取出一组特定的属性的值 从json文件 对象数组中取出一组特定的属性的值,并排除null值 格式化输出js ...
- linux命令下jq的用法简介
jq简介 jq可以对json数据进行分片.过滤.映射和转换,和sed.awk.grep等命令一样,都可以让你轻松地把玩文本.它能轻松地把你拥有的数据转换成你期望的格式,而且需要写的程序通常也比你期望的 ...
- linux命令之jq
概述 jq是一个解析json的命令行工具. 用法 美化 $ echo '{"name": "test", "age": 33}' | jq ...
- linux 命令之jq
jq命令允许直接在命令行下对JSON进行操作,包括分片.过滤.转换等 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.基于JavaScript(Stand ...
- jq输出文本_如何用 Linux 命令行工具解析和格式化输出 JSON | Linux 中国
我们将使用 Linux 上的命令行工具解析并格式化打印 JSON.它对于在 shell 脚本中处理大型 JSON 数据或在 shell 脚本中处理 JSON 数据非常有用.-- Ostechnix J ...
- Linux杂谈之jq命令
一 JSON (1)什么是json 1) JSON 是最常用的'配置'和'数据交换'格式之一,一种与'开发语言无关-->独立于语言的文本格式'的.'轻量级'的数据存储格式,全称JavaScr ...
- 实用!五款新型 Linux 命令行工具
使用新的替代工具来改进旧的命令行工具. 作者 | Ricardo Gerardi 译者 | 弯月,责编 | 屠敏 出品 | CSDN(ID:CSDNnews) 以下为译文: 在Linux/Unix系统 ...
- Linux下安装jq
Linux下安装jq 查看是否有jq安装包 yum list| grep jq 若有,直接安装jq yum -y install jq 直接在命令行输入:jq,然后回车,看到以下信息说明安装完毕 jq
- Linux命令行使用总结
必读 范围: 这是为 Linux 写的.绝大部分条目都可以同样应用到 MacOS(或者甚至 Cygwin). 主要针对交互式 Bash,尽管大多数小窍门也可以应用到其它 shell,以及常规 Bash ...
最新文章
- 第十五届全国大学生智能汽车竞赛青少年组获奖名单
- 实训项目2Linux基本命令,实训项目2 Linux文件系统管理
- 中文转unicode,中文转bytes,unicode转bytes java实现
- 【Linux网络编程】Linux多播问题(No such device)解决方法
- 关于Python的一些学习笔记(小白式笔记,持续更新)
- 区块链 怎么设置区块最大交易容量
- WAIT numslaves timeout
- 定时器函数执行原理揭秘
- Linux驱动基础知识(一)
- ORACLE Primavera P6 / Unifier 19.12 免费虚拟机
- 【数学建模】CUMCM-2016A 系泊系统的设计 解题思路整理
- dataBinding 配置问题 Could not find method buildFeatures()for arguments xxx on extension ‘android
- char * 与char []区别总结
- 【转】全套汽车标志\路牌,好不容易找到的哦!
- *TEST 11 for NOIP 再次爆炸 (100-300)-----(( ! ))
- nb_200905_2019_cvpr_Slow-Motion from Blurry Videos
- SwiftUI AVKit 之合并和叠加音频mp3 并输出
- excel批注不显示批注框_批注和批注处理器入门指南[解释]
- iOS 隐形水印之 LSB 实现
- 在qt中实现图片的加载
热门文章
- Java爬虫之JSoup使用教程
- Lenovo YOGA 14s(不只适合这一款机型)重装系统后触控板失灵 + 解决方法 )
- android手机密码忘了哪个电话打开,安卓手机锁屏密码忘了怎么办 解决锁屏密码六种方法介绍...
- jQuery选择器$()
- magento怎么修改货币符号,在之前加上国家缩写
- ZYNQ 7000 AMP模式双裸核运行 双方共享内存交互
- google glog使用指南
- 华为云主机怎么样?华为云弹性云服务器有什么优势?
- 微服务架构,springcloud核心组件和实战,docker容器
- matlab 仿射变换函数,matlab 中的仿射变换函数