详解文件属性开始结束

Shell Jq命令详解

服务器技术 2021-09-03 13:49:35 47

导读

Json文件对象是属性、值的集合。一个对象开始与”{”,结束于”}”。每一个属性名和值间用”:”分隔。每个属性间用”,”分隔。值可以是字符串,数字,逻辑值,数组,对象,null。数字:整数或浮点数字符串:在双引号中逻辑符:true和false数组:在方括号中对象:在花括号中nu……

Json文件

对象是属性、值的集合。一个对象开始与”{” ,结束于”}”。每一个属性名和值间用”:”分隔。每个属性间用”,”分隔。
值可以是字符串,数字,逻辑值,数组,对象,null。 数字:整数或浮点数 字符串:在双引号中 逻辑符:true和false
数组:在方括号中 对象:在花括号中 null: 代表空

示范

  • jq “.” 解析全部内容

  • jq “.name,.id” 解析key为name和id的value ,为分隔符,基于当前

一般使用
{"name":"ym68","id":68,"url":"https://www.ym68.cc"}
解析Json格式文件内容
[root@Frpd-vip ~]# jq . a {   "name": "ym68",   "id": 68,   "url": "https://www.ym68.cc" }
解析指定key内容
[root@Frpd-vip ~]# jq .name a "ym68" [root@Frpd-vip ~]# jq .name,.id a "ym68" 68
常规
  • jq “.name_list|.[].name,.[].id” 解析指定key值,当有[]时需|进行分割

{"name_list":[{"name":"zhangsan","id":12},{"name":"lisi","id":13}],"id":68,"url":"https://www.ym68.cc"}
[root@Frpd-vip ~]# jq . a {   "name_list": [     {       "name": "zhangsan",       "id": 12     },     {       "name": "lisi",       "id": 13     }   ],   "id": 68,   "url": "https://www.ym68.cc" } [root@Frpd-vip ~]# jq ".name_list|.[].name,.[].id" a "zhangsan" "lisi" 12 13 [root@Frpd-vip ~]# jq ".name_list|.[]|.name,.id" a "zhangsan" 12 "lisi" 13
重新指定输出内容
  • jq “.name_list|.[]|{mingcheng:.name,yonghuid:.id}” 将[]中的内容进行重输出

[root@Frpd-vip ~]# jq ".name_list|.[]|{mingcheng:.name,yonghuid:.id}" a {   "mingcheng": "zhangsan",   "yonghuid": 12 } {   "mingcheng": "lisi",   "yonghuid": 13 } [root@Frpd-vip ~]# jq ".name_list|.[]|{mingcheng:.name,yonghuid:.id,xinzeng:\"codedd\",xinzen2:12}" a {   "mingcheng": "zhangsan",   "yonghuid": 12,   "xinzeng": "codedd",   "xinzen2": 12 } {   "mingcheng": "lisi",   "yonghuid": 13,   "xinzeng": "codedd",   "xinzen2": 12 }

待完善~


1253067 TFnetwork_cn