首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用xidel列出所有json指针

使用xidel列出所有json指针
EN

Stack Overflow用户
提问于 2016-06-17 20:17:40
回答 1查看 236关注 0票数 1

是否可以使用xidel或其他命令行工具从一个文件列出/生成所有JSON Pointers

我试过了

代码语言:javascript
复制
xidel test.json -e '$json()'

但是它只列出顶级字段,而我想要一个递归列表,就像我在xmlstarlet el -a中得到的那样。

EN

回答 1

Stack Overflow用户

发布于 2016-06-18 22:55:13

您可以为此声明一个递归函数:

代码语言:javascript
复制
xidel test.json -e '
      declare function escape ($s) { replace(replace($s, "~", "~0"), "/", "~1") };
      declare function enum($v, $pointer) {
        typeswitch ($v) 
          case array()  return $v() ! enum(., $pointer || "/" || string(position() - 1))
          case object() return $v() ! enum($v(.), $pointer || "/" || escape(.))
          default       return $pointer
      };
      enum($json, "")
'
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37892961

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档