当前位置: 首页 > news >正文

t型布局网站怎么做shopify建站流程

t型布局网站怎么做,shopify建站流程,天津网站优化公司哪家专业,展示类网站cms在shell脚本中#xff0c;当我们需要对JSON数据#xff08;例如ceph、kubernetes等一些命令的输出#xff0c;或是调用API获得的响应#xff09;进行处理和提取时#xff0c;如果使用传统的文本三剑客sed、awk和grep#xff0c;命令将会非常臃肿不可读。虽然这三个命令在…在shell脚本中当我们需要对JSON数据例如ceph、kubernetes等一些命令的输出或是调用API获得的响应进行处理和提取时如果使用传统的文本三剑客sed、awk和grep命令将会非常臃肿不可读。虽然这三个命令在处理松散结构的数据时很有用但当面对JSON这类数据时却显得不够优雅。 jq就是这样一个命令行工具专门用于处理JSON数据特别适用于shell脚本。 jq命令的使用 首先我们需要安装jq命令yum install jq -y 创建如下的示例文件一张学生成绩表 # cat test.json [{ name: zhangsan, gender: male, score: 80 },{ name: lisi, gender: male, score: 90 },{ name: wangerma, gender: female, score: 100 } ]jq命令的标准语法为jq [options] jq filter [file...]最简单的过滤器为.它将输入原封不动地转换为输出会做格式化、高亮例如 # jq . test.json [{name: zhangsan,gender: male,score: 80},{name: lisi,gender: male,score: 90},{name: wangerma,gender: female,score: 100} ]这个命令可以用于检测输入是否为合格的json例如将test.json修改为 # cat test.json [{ name: zhangsan, gender: male, score: 80 },{ name: lisi, gender: male, score: 90 },{ name: wangerma, gender: female, score: 100 }则命令会报错 # jq . test.json parse error: Unfinished JSON term at EOF at line 6, column 0所以我们可以写如下shell作判断 #!/bin/bash if jq . test.json /dev/null 21 thenecho valid json else echo invalid json fi检索键值 如果我们将需要获取所有学生的姓名列表如下 [zhangsan,lisi,wangerma ]该怎么做为此我们需要先使用数组迭代器.[]来获取列表中每一项值 # jq .[] test.json {name: zhangsan,gender: male,score: 80 } {name: lisi,gender: male,score: 90 } {name: wangerma,gender: female,score: 100 }然后获取每一项输出的name键值这里使用我们熟悉的管道符| # jq .[] | .name test.json zhangsan lisi wangerma如果想要去掉输出中的双引号可以使用-r参数输出原始字符串 # jq -r .[] | .name test.json zhangsan lisi wangerma接下来我们可以在过滤器的最外层加上[]来讲结果转换为列表 # jq [.[] | .name] test.json [zhangsan,lisi,wangerma ]以上过滤器的表达式看起来似乎有些臃肿了好在jq提供了map函数因此我们可以将上述表达式替换为 # jq map(.name) test.json [zhangsan,lisi,wangerma ]使用add函数对键值进行求和 仿照上述语法我们可以可以获得所有学生的成绩列表 # jq map(.score) test.json [80,90,100 ]同样。使用管道符|接add函数即可轻松获取所有学生的成绩总和 # jq map(.score) | add test.json 270使用select获取部分键值 如果我们想要对所有男生的成绩进行求和就需要使用select(condition)函数了所有condition为true的输入会被保留false则会被丢弃如我们获取所有性别为男的数据gender male # jq map(select(.gender male)) test.json [{name: zhangsan,gender: male,score: 80},{name: lisi,gender: male,score: 90} ]进一步获取所有男生的分数 # jq map(select(.gender male).score) test.json [80,90 ]最后求和 # jq map(select(.gender male).score) | add test.json 170将输入转换为新的格式输出 如果我们想将上述步骤中的输出合并为一个新的json数据并输出则可以使用如下方式进行格式化输出 # jq { students: map(.name), totalscore: map(.score) | add, totalmalescore: map(select(.gender male).score) | add } test.json {students: [zhangsan,lisi,wangerma],totalscore: 270,totalmalescore: 170 }总结 在shell脚本中处理json数据jq命令是个很好的选择。 本教程将对这个命令的用法只进行了简单入门介绍如需了解详细语法可以参看官方文档https://jqlang.github.io/jq/manual/
http://www.hkea.cn/news/14306391/

相关文章:

  • 厦门创意互动网站建设投资公司设立条件
  • 手机网站怎么建立工厂采购信息网
  • 上海沙龙网站建设网站定制的公司
  • 网站备案域名更改吗程序员做的导航网站
  • 西咸新区建设环保网站网址收录平台
  • 做电影网站服务器需求网站建设,h5,小程序
  • 深圳网站建设延安网站编辑框超链接怎么做
  • 白沟做网站广州市运营推广公司
  • 上海免费建网站手机网站后台管理
  • 免费做图素材网站织梦+和wordpress
  • 沙河口网站建设土特产 网站源码
  • 石景山网站建设好的公司搜索引擎优化的例子
  • 磁县网站建设小程序开发哪家公司好
  • 外包+网站开发公司中国建设银行网站会员可以改名
  • 姜堰网网站写作网站5秒不写就删除
  • 新开河街网站建设公司别墅外观设计网站推荐
  • 做苗木行业网站赚钱同一建筑施工企业在12个月内
  • 手机创建网站的软件非寻服饰网站建设规划书
  • 海西州电子商务网站建设公司公司就两个开发
  • 网站搭建平台有哪些网站设计工资一般多少
  • wordpress在线预览开鲁网站seo
  • asp网站用什么软件网站开发常用语言总结
  • 学做彩票网站有哪些宽带
  • 做石材外贸用什么网站大石桥城乡规划建设局网站
  • 洪梅镇仿做网站个人简历表下载可填写
  • ssh购物网站开发视频dedecms做的网站
  • sql网站的发布流程网站开发w亿玛酷1负责
  • 网站推广的定义及方法网站域名的意思
  • 视频网站中滑动列表怎么做的2345网址导航app下载2021
  • 效果图制作网站有哪些户户通行业网站