linux jq命令

天下奇闻 2023-03-27 21:32www.nkfx.cn天下奇闻

linux系统下jq命令是什么呢?下面是jq命令具体介绍

1、jq命令简介

jq命令允许直接在命令行下对JSON进行操作,包括分片、过滤、转换等

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。基于JavaScript(Standard ECMA-262 3rd Edition - December 1999)的一个子集JSON 数据的书写格式是 名称/对象。JSON的结构基于两点

“名称/值”的集合 ,在不同的语言中,它可以被理解为对象(object),记录(record),结构(struct),字典(dictionary),哈希表(hash table),键列表(keyed list)等 .值的有序列表 多数语言中被理解为数组(array)

2、JSON的基础结构

对象是属性、值的集合。一个对象开始与”{” ,结束于”}”。每一个属性名和值间用”:”分隔。每个属性间用”,”分隔。

值可以是字符串,数字,逻辑值,数组,对象,null。

数字整数或浮点数

字符串在双引号中

逻辑符true和false

数组在方括号中

对象在花括号中

null 代表空

Ubuntu下的jq安装

apt-get install jq

3、jq命令的格式

jq [options] filter [files]

options

--version输出jq的版本信息并退出

--slurp/-s读入整个输入流到一个数组。

--ra-input/-R不作为JSON解析,将每一行的文本作为字符串输出到屏幕。

--null-input/ -n不读取任何输入,过滤器运行使用null作为输入。一般用作从头构建JSON数据。

--pact-output /-c使输出紧凑,而不是把每一个JSON对象输出在一行。

--colour-output / -C打开颜色显示

--monochrome-output / -M关闭颜色显示

--ascii-output /-a指定输出格式为ASCII

-ra-output /-r 如果过滤的结果是一个字符串,那么直接写到标准输出(去掉字符串的引号)

filter

.   : 默认输出

.foo: 输出指定属性,foo代表属性。

.[foo] 输出指定数组元素。foo代表数组下标。

.[]输出指定数组中全部元素

, 指定多个属性作为过滤条件时,用逗号分隔

| 将指定的数组元素中的某个属性作为过滤条件

files

JOSN格式文件。

以上就是趣谈网小编今天的分享了,希望可以帮助到大家。

上一篇:linux wait 下一篇:linux bc命令

Copyright © 2016-2025 www.nkfx.cn 趣谈网 版权所有 Power by