📦 x-cmd pkg | jc - 数据 JSON 化工具,轻松将命令的输出和数据文件内容转为 JSON 格式

87 阅读2分钟

简介

jc(JSON Convert) 是由 github.com/kellyjonbra… 用 Python 开发的数据 JSON 化工具,用于将常见的命令行工具和数据文件的输出转化为 JSON、YAML 或 Dictionary 格式的数据,以便用户可以使用其他工具(如 jq、脚本语言等)处理和分析数据。

工作原理:针对每种支持的命令或数据格式设计一套定制化的解析规则,从而将复杂文本输出转化为标准的 JSON 数据。

pixi.cn.gif

快速上手

安装

eval "$(curl https://get.x-cmd.com)"        # 安装 x-cmd
x env use jc                                # 使用 x-cmd 安装 jc

使用

  1. 将常用命令的输出转化为 JSON 格式的数据:

    ls -l /bin | jc -p --ls
    
    # "magic" 语法,相当于 `ping x-cmd.com -c 3 | jc -p --ping`
    jc -p ping x-cmd.com -c 3
    
  2. 将常用数据格式文件的内容转化为 JSON 格式的数据:

    x ascii --csv | jc -p --csv     # CSV 数据
    cat example.ini | jc -p --ini   # ini 数据
    cat /etc/hosts | jc -p --hosts  # /etc/hosts 文件数据,用于存储主机名与 IP 地址的映射关系
    

功能特点

  1. 支持多种命令和数据文件:截止 jc 1.25.3 版本,它已支持 200 多种命令行工具和数据文件,如 ls 命令、ping 命令、ps 命令、csv 文件、ini 文件、xml 文件等。
  2. 易于集成:使用简单,并可通过管道将其与其他工具结合使用,适合用于自动化脚本开发。

竞品和相关项目

  1. jq:用可移植 C 开发的命令行 JSON 处理器,功能强大,能帮用户轻松分割、筛选、映射和转换 JSON 数据。
  2. yq:一个 YAML 处理工具。该工具采用 Go 语言编写,设计参考 jq,支持 xpath 表达式,能处理 YAML、JSON、XML、CSV、TOML 等多种格式的数据。

进一步探索

  • jc 源代码 - jc 项目的源代码托管在 GitHub,你可以在这里找到最新版本的 jc 和参与社区贡献。
  • jc - 使用示例
  • Hacker News discussion - 主要讨论了在命令行中使用 JSON 作为“中间表示”的利弊,值得一读。




更多内容请查阅 : pkg/jc

转载请标明原文链接www.x-cmd.com/pkg/jc


关注微信官方公众号 : oh my x

获取开源软件和 x-cmd 最新用法