x-cmd-pkg | gojq - 基于 Go 编写的 jq 工具

2024-04-03 22:44
文章标签 工具 go 编写 cmd pkg jq gojq

本文主要是介绍x-cmd-pkg | gojq - 基于 Go 编写的 jq 工具,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

简介

gojq 是由 itchyny 基于 Go 编写的 jq 工具。用户还可以将 gojq 作为库嵌入到自己的 Go 产品中。

首次用户

  1. 本文的 demo 展现了如何通过 x-cmd 快速使用 gojq 。
  2. x-cmd 也提供了gojq 1分钟教程可以帮你快速入门。

功能特点

  • 功能强大:提供了类似jq的功能,支持使用jq的语法和功能,可以用于JSON数据的查询、筛选、转换和格式化。
  • 跨平台性:可以在各种操作系统中使用,具有跨平台特性。
  • 可移植:gojq纯粹用Go语言实现,完全可移植,不需要依赖标准库。
  • YAML/YML 数据:gojq 支持从 YAML 输入( --yaml-input )读取,而 jq 不支持。 gojq 还支持 YAML 输出( --yaml-output )。

常见用法

示例

# 通过 x 获取 gojq
x env use gojq# 查看 gojq 的 help 文档
gojq --help# 使用 gojq 读取字段
echo '{"foo": 128}' | gojq '.foo'

类似或相关的工具

  • jq - 是一个轻量级的基于命令行的 JSON 处理工具,由 Stephen Dolan 于 2012 年开发的。目前,jq 最新稳定版本是 1.7,发布于2023年。
  • yq (YAML Query) - 是一个轻量级的 YAML、JSON、XML 处理器,主要用于查询和提取 YAML 数据。
  • jless - 是一个命令行 JSON 查看器,设计用于读取、探索和搜索 JSON 数据。

进一步阅读

  • 项目托管在 Github 上,里面的 README 文档提供了详细的参数功能和使用说明
  • 评论:HackerNews

这篇关于x-cmd-pkg | gojq - 基于 Go 编写的 jq 工具的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/874170

相关文章

Go路由注册方法详解

《Go路由注册方法详解》Go语言中,http.NewServeMux()和http.HandleFunc()是两种不同的路由注册方式,前者创建独立的ServeMux实例,适合模块化和分层路由,灵活性高... 目录Go路由注册方法1. 路由注册的方式2. 路由器的独立性3. 灵活性4. 启动服务器的方式5.

Go语言中三种容器类型的数据结构详解

《Go语言中三种容器类型的数据结构详解》在Go语言中,有三种主要的容器类型用于存储和操作集合数据:本文主要介绍三者的使用与区别,感兴趣的小伙伴可以跟随小编一起学习一下... 目录基本概念1. 数组(Array)2. 切片(Slice)3. 映射(Map)对比总结注意事项基本概念在 Go 语言中,有三种主要

Java数字转换工具类NumberUtil的使用

《Java数字转换工具类NumberUtil的使用》NumberUtil是一个功能强大的Java工具类,用于处理数字的各种操作,包括数值运算、格式化、随机数生成和数值判断,下面就来介绍一下Number... 目录一、NumberUtil类概述二、主要功能介绍1. 数值运算2. 格式化3. 数值判断4. 随机

使用Navicat工具比对两个数据库所有表结构的差异案例详解

《使用Navicat工具比对两个数据库所有表结构的差异案例详解》:本文主要介绍如何使用Navicat工具对比两个数据库test_old和test_new,并生成相应的DDLSQL语句,以便将te... 目录概要案例一、如图两个数据库test_old和test_new进行比较:二、开始比较总结概要公司存在多

Go Mongox轻松实现MongoDB的时间字段自动填充

《GoMongox轻松实现MongoDB的时间字段自动填充》这篇文章主要为大家详细介绍了Go语言如何使用mongox库,在插入和更新数据时自动填充时间字段,从而提升开发效率并减少重复代码,需要的可以... 目录前言时间字段填充规则Mongox 的安装使用 Mongox 进行插入操作使用 Mongox 进行更

Java中基于注解的代码生成工具MapStruct映射使用详解

《Java中基于注解的代码生成工具MapStruct映射使用详解》MapStruct作为一个基于注解的代码生成工具,为我们提供了一种更加优雅、高效的解决方案,本文主要为大家介绍了它的具体使用,感兴趣... 目录介绍优缺点优点缺点核心注解及详细使用语法说明@Mapper@Mapping@Mappings@Co

使用Python实现图片和base64转换工具

《使用Python实现图片和base64转换工具》这篇文章主要为大家详细介绍了如何使用Python中的base64模块编写一个工具,可以实现图片和Base64编码之间的转换,感兴趣的小伙伴可以了解下... 简介使用python的base64模块来实现图片和Base64编码之间的转换。可以将图片转换为Bas

使用Java实现一个解析CURL脚本小工具

《使用Java实现一个解析CURL脚本小工具》文章介绍了如何使用Java实现一个解析CURL脚本的工具,该工具可以将CURL脚本中的Header解析为KVMap结构,获取URL路径、请求类型,解析UR... 目录使用示例实现原理具体实现CurlParserUtilCurlEntityICurlHandler

Go语言利用泛型封装常见的Map操作

《Go语言利用泛型封装常见的Map操作》Go语言在1.18版本中引入了泛型,这是Go语言发展的一个重要里程碑,它极大地增强了语言的表达能力和灵活性,本文将通过泛型实现封装常见的Map操作,感... 目录什么是泛型泛型解决了什么问题Go泛型基于泛型的常见Map操作代码合集总结什么是泛型泛型是一种编程范式,允

Rsnapshot怎么用? 基于Rsync的强大Linux备份工具使用指南

《Rsnapshot怎么用?基于Rsync的强大Linux备份工具使用指南》Rsnapshot不仅可以备份本地文件,还能通过SSH备份远程文件,接下来详细介绍如何安装、配置和使用Rsnaps... Rsnapshot 是一款开源的文件系统快照工具。它结合了 Rsync 和 SSH 的能力,可以帮助你在 li