当前位置:  操作系统/服务器>linux

在Shell命令行处理JSON数据的方法

    来源: 互联网  发布时间:2014-10-16

    本文导语:  因为最近要处理一些 JSON 数据格式,所以在经过一番搜索后 最终找到了 jq 这个很棒的工具。jq 允许你直接在命令行下对 JSON 进行操作,包括分片、过滤、转换等等。让我们通过几个例子来说明 jq 的功能:一、输出格式化,漂...

因为最近要处理一些 JSON 数据格式,所以在经过一番搜索后 最终找到了 jq 这个很棒的工具。jq 允许你直接在命令行下对 JSON 进行操作,包括分片、过滤、转换等等。
让我们通过几个例子来说明 jq 的功能:
一、输出格式化,漂亮的打印效果
如果我们用文本编辑器打开 JSON,有时候可能看起来会一团糟,但是通过 jq 的 .(点)过滤器就可以立马让 JSON 的格式规整起来。
1.用文本编辑器打开后的样子

2.用 jq 显示的结果

代码如下:
% jq . soundtag.json


二、快速查询JSON数据
利用 jq 能够以 key 作为关键字来对 JSON 作出快速查询, 例如:
代码如下:
% jq .cn soundtag.json

这将仅仅显示 cn 键对应的值。
jq 的键查询也支持链式调用,如:
代码如下:
% jq .cn[0].pNum soundtag.json

三、jq的管道操作
熟悉命令行的朋友可能都知道 | (管道)是一个非常强大的 武器。幸运的是,jq 也提供了对管道的支持。
代码如下:
% jq '.cn[] | { pNum }' soundTag.json

在这里,我们使用管道过滤并构造出 pNum 对象。
四、总结
如果你需要在命令行下处理 JSON,我强烈推荐 jq。jq 不仅 能够满足一般性的常见需求,更包含运算、内置函数、条件比较、 变量声明、自定函数等强大功能。对此感兴趣的朋友,不妨通过 jq 的官方手册 进行学习。

    
 
 

您可能感兴趣的文章:

  • Centos6下安装Shell下文件上传下载rz,sz命令
  • 不同类型的shell*(K SHELL , C SHELL) 用命令怎么切换?
  • linux bash shell命令:grep文本搜索工具简介
  • 菜鸟问问题:shell是什么呢?普通的ls、cp、pwd这些命令算不算shell呢?如何把自己写的文件变成shell呢?
  • linux bash shell命令:文本搜索工具grep中用于egrep和 grep -E的元字符扩展集
  • 小弟没写过shell,求解 linux shell 命令
  • linux bash shell命令:文本搜索工具Grep命令选项及实例
  • 如何编写Shell,当SQL执行完毕后,继续调用Shell命令。
  • linux bash shell命令:文本搜索工具grep正则表达式元字符集(基本集)
  • Linux 下的cd命令为什么要实现成shell的内建命令
  • shell 命令有as命令吗
  • Linux命令、编辑器与Shell编程 和 UNIX SHELL范例精解(第4版) 区别大么?
  • cd、zip等命令在shell提示符下能执行,在shell脚本中为什么不能执行呢?
  • 有关裁减内核及shell命令的问题
  • redhat linux7.2/7.3,SHELL下,reboot是重启,那么要在SHELL下关机是什么命令???
  • 内核执行shell命令问题
  • 最近学shell命令,但它大量的命令选项特别让人郁闷,不知道有什么方法可以记住这些选项?
  • Linux程序中运行shell命令
  • unix shell如何在不把命令结果打出来的情况下判断命令是否可以执行呢?
  • 在shell命令行中敲一个可执行文件,起一个进程pc,这个进程属于shell进程
  • 求教高手,关于shell命令
  • 在LINUX下做文本处理的工作,一般是用SHELL脚本还是动态语言方便?
  • 请教:shell遍历文件夹,处理其中的文件。
  • [100分]如何在GTK下编写的程序中调用shell下的批处理程序[高手进]
  • 怎样用SHELL按行读取文件并处理?
  • Shell处理数据的唯一性问题
  • SHELL编程和后台批处理
  • LINUX SHELL 正则处理汉字 问题
  • shell脚本日期处理
  • 关于shell编程的文本处理
  • shell编程:我这样处理上G的大文件,会不会有问题?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 怎么判断shell的exec方法所执行的方法是否正确?
  • 请问RH9 的shell 下配置自带防火墙的方法,启动/关闭方法
  • C语言调用shell脚本后,通过何种方法能获取脚本中变量的值
  • 对Shell 脚本加密的方法
  • 有没有方法在程序里改变shell的工作目录呢?
  • 在Shell脚本中有没有方便的XML解析方法阿
  • 请教shell写文件方法
  • Shell中调用、引用、包含另一个脚本文件的三种方法
  • linux shell进度条实现方法
  • 关于编写SHELL,实现更改当前目录的方法,请指教
  • 求shell下解压的方法
  • 请问shell里面有什么方法可以比较2个固定格式文件里面的某个域
  • Linux中执行shell脚本的4种方法总结
  • Linux shell脚本中字符串连接的方法
  • Shell脚本中计算字符串长度的5种方法
  • 用shell脚本在mysql表中批量插入数据的方法
  • 我的linux的时间不对。我怎么用shell命令修改。不要告诉我Xwindows的方法!
  • 更改linux用户登录shell的操作方法
  • 用内置变量调试shell脚本的方法
  • shell中删除文件中重复行的方法
  • Linux下指定运行时加载动态库路径及shell下执行程序默认路径
  • 我在执行shell时,想在shell里直接向mysql数据库插入数据,我该如何写shell。
  • 傻瓜问题,请问shell编程和shell脚本编程的关系
  • shell变量和子shell的问题请教
  • 请问“当前shell”和“子shell”的区别?
  • 怎么知道当前是B_SHELL 还是C_SHELL
  • 用户登陆后运行某SHELL退出SHELL就回到LOGIN是怎么作到的?
  • 怎么写shell代码 写好shell怎么运行?
  • 请问一个shell中如何获取这个shell自身抛出的错误?
  • 非登录shell是什么 意思,和登录shell有什么区别啊
  • Solaris 8中修改root的shell为一个非法的Shell后怎么办?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3