x-cmd pkg | yq - 命令行 YAML处理工具

目录

    • 简介
    • 首次用户
    • 支持格式转换
    • 友好的显示和操作
    • 语法与 jq 类似
    • 竞品和相关作品
    • 进一步阅读

简介

yq (YAML Query) 是一个轻量级的 YAML、JSON、XML 处理器,主要用于查询和提取 YAML 数据。
yq 的包来自 mikefarah/yq 项目,语法类似于 jq 。相比 kislyuk/yq ,它不依赖 jq,能处理多种数据格式,包括 YAML、JSON、XML、Properties、CSV 和 TSV。

首次用户

  1. 使用 x yq 即可自动下载并使用

    • 在终端运行 eval "$(curl https://get.x-cmd.com)" 即可完成 x 命令安装, 详情参考 x-cmd 官网
  2. x-cmd 提供1分钟教程,其中包含了 yq 命令常用功能的 demo 示例,可以帮你快速上手 yq 。

  3. 使用案例:

    yq-1min-cn

    # 格式化输出 YAML 数据
    x yq '.' file.yml
    x ascii --yml | x yq '.'# 从 YAML 数据中获取 "Description" 属性的值
    x ascii --yml | x yq '.[1].Description'# 修改 YAML 中 "Description" 属性的值
    x ascii --yml | x yq '.[1].Description = "x-cmd" | .[1]'# 将前 5 个 ascii 码的 "Oct" 属性值加 1
    x ascii --yml | x yq '(.[] | select(.Dec <5)|.Oct + 1)'# 检测 JSON 中是否含有 `Description` 属性
    x ascii --json | x yq '.[1] | has("Description")'# 将 YAML 转化为 JSON 格式
    x ascii --yml | x yq -o json
    

支持格式转换

yq 可以把 YAML 数据转为 JSON,ndJSON,CSV 和 TSV 的数据格式;也可以与 XML 数据互相转换。

友好的显示和操作

  1. 提供通用 shell (bash/zsh/fish/powershell) 的补全脚本,可以帮您在使用 yq 命令时自动补全参数和选项。
  2. 可以输出彩色化的 YAML,并保留 YAML 的格式、注释、样式、标签、锚点和别名。
  3. 可以用于自动化流水线的 GitHub Action

语法与 jq 类似

  1. 支持深层次的数据结构:可以使用类似于 jq 的语法来访问和修改 YAML、JSON 和 XML 数据中的任意深度的元素。
  2. 可以查询、修改、合并、排序、编码/解码、加载和计算 YAML、JSON 和 XML 数据,能解析和格式化日期和时间,支持不同时区。

竞品和相关作品

  1. kislyuk/yq

  2. jq:轻量级的 JSON 处理工具,由 Stephen Dolan 于 2012 年使用 C 语言开发。yq 的很大一部分灵感就来源于 jq.

  3. dasel:一个支持众多格式(JSON,CSV,YAML,XML)的命令行方案,我们认为其功能稍逊于 jq,但胜在简单易用,能胜任大多数场景。

进一步阅读

  • jq 源代码 - jq 项目的源代码托管在 GitHub,你可以在这里找到最新版本的 jq 和参与社区贡献。
  • Getting started: jq - 官方提供的 jq 快速上手文档。
  • My Cheatsheet for the “yq” Tool - 其中讲解了如何使用 yq 解析 Kubernetes YAML 文件
  • yq : Mastering YAML Processing in Command Line - 其中讲解了如何使用命令行更有效地解析和操作 YAML 文件

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/640538.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java数据结构与算法刷题-----LeetCode645. 错误的集合(位运算解法需要重点掌握)

java数据结构与算法刷题目录&#xff08;剑指Offer、LeetCode、ACM&#xff09;-----主目录-----持续更新(进不去说明我没写完)&#xff1a;https://blog.csdn.net/grd_java/article/details/123063846 文章目录 法一&#xff1a;桶排序思想法二&#xff1a;位运算 法一&#x…

Python文件操作和异常处理:高效处理数据的利器

文章目录 一、引言1.1 文件操作和异常处理对于编程的重要性1.2 Python作为实现文件操作和异常处理的强大工具 二、为什么学习文件操作和异常处理2.1 处理各种文件格式&#xff1a;从文本到图像到音频等2.2 确保代码的鲁棒性&#xff1a;有效处理异常情况 三、文件读取和写入3.1…

Transformer 深度学习模型

文章目录 Transformer是一种深度学习模型&#xff0c;最初由Vaswani等人在2017年的论文《Attention is All You Need》中提出。它被设计用于处理序列数据&#xff0c;特别是在自然语言处理&#xff08;NLP&#xff09;任务中取得了显著的成功。 传统的循环神经网络&#xff08…

什么是关键字?C语言的关键字有哪些?(C语言32个关键字详解)

目录 一、问题 二、解答 1、数据类型关键字&#xff08;12个&#xff09; (1) 声明和定义的区别 (2) 数据类型关键字 • char&#xff1a;声明字符型变量 1、声明字符变量 2、字符数组 3、ASCII码表示 4、指针与字符数组 5、多字节字符集&#xff08;如UTF-8&#xff…

【C++】初识类和对象

引言 在C语言中&#xff0c;我们用结构体来描述一个复杂的对象&#xff0c;这个对象可能包括许多的成员&#xff0c;如用结构体描述一个学生的成绩&#xff0c;或者描述一个日期等。 struct Date {int _year;int _month;int _day; }; 如上是一个描述日期的结构体定义&#x…

week2day1 列表操作()

一. 列表相关操作 1.列表支持的数学运算符&#xff1a; a . 、* 列表1 列表2 将两个列表合并成一个新的列表 list [10,20,30] list2 [340,50,60] print(list list2) [10, 20, 30, 340, 50, 60]b. 列表 *N / N* &#xff08;N是正整数&#xff09; 将列表中的元素重复…

vue常用指令有哪些

Vue常用的指令包括&#xff1a; v-model&#xff1a;实现双向数据绑定&#xff0c;用于表单元素的值与Vue实例的数据属性进行关联。v-if、v-else-if、v-else&#xff1a;用于条件性地渲染DOM元素&#xff0c;根据表达式的真假来决定是否渲染元素。v-show&#xff1a;通过改变C…

超融合基础架构理解

1 超融合基础架构 1.1 定义 超融合基础架构&#xff08;Hyper-converged infrastructure&#xff0c;缩写为HCI&#xff09;&#xff0c;是一种集成了存储设备及虚拟运算的信息基础架构框架。在这样的架构环境中&#xff0c;同一厂商的服务器与存储等硬件单元&#xff0c;搭配…

【网站项目】基于SSM的263货物进销管理系统

&#x1f64a;作者简介&#xff1a;多年一线开发工作经验&#xff0c;分享技术代码帮助学生学习&#xff0c;独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。&#x1f339;赠送计算机毕业设计600个选题excel文件&#xff0c;帮助大学选题。赠送开题报告模板&#xff…

探索Docker-Compose:从基础到高级命令全解析

探索Docker-Compose&#xff1a;从基础到高级命令全解析 引言Docker-Compose基础1. Docker-Compose简介2. 安装Docker-Compose3. 编写第一个Compose文件4. 基本命令 Docker-Compose文件结构解析1. 理解docker-compose.yml2. 基本组件3. 文件示例4. 配置项解析 常用Docker-Compo…

洛谷P1319 压缩技术(C语言)

这样一道入门题目&#xff0c;本来可以用for循环直接操作&#xff0c;但作者异想天开(xian de dan teng)地把所有数据登记在一个数组里面&#xff0c;然后再统一按格式输出。也就是定义一个数组Map&#xff0c;大小为n成n&#xff0c;然后按照输入数据&#xff0c;把Map中每一个…

【50.2K⭐】Tabby:一款强大、灵活且跨平台的免费终端应用程序

【50.2K⭐】Tabby&#xff1a;一款强大、灵活且跨平台的免费终端应用程序 在快节奏的现代生活中&#xff0c;我们总是在寻找提高工作效率的方法。如果你是一位开发人员&#xff0c;或者是一个对技术充满好奇心的电脑爱好者&#xff0c;我们经常需要在 Windows 上进行远程操作与…

加密机授权报错如何排查?进入加密机后台的方式介绍

我们在此前的文章中介绍过不少TSINGSEE青犀视频安防监控视频平台关于加密机授权操作及相关疑问解答&#xff0c;感兴趣的用户可以翻阅往期的文章进行了解。由于新用户咨询该方面的问题较多&#xff0c;今天我们再来介绍一下用户在使用过程中遇到的问题。 1、如何进入加密机后台…

Vue-33、Vue中为什么使用render函数

1、main.js //该文件是整个项目的入口文件 //引入Vue import Vue from vue //引入APP组件&#xff0c;他是所有组件的父组件 import App from ./App.vue //关闭Vue是生产提示 Vue.config.productionTip false; //创建Vue实例对象---vm new Vue({render: h > h(App), }).$m…

2024中国(杭州)国际冷链物流与冷库建设技术展览会

2024中国&#xff08;杭州&#xff09;国际冷链物流与冷库建设技术展览会 地点&#xff1a;杭州国际博览中心 时间&#xff1a;2024年7月8日-10日 ■组展背景&#xff1a; 冷链物流行业作为现代物流行业的重要组成部分&#xff0c;近年来发展迅速。导及相关部委高度重视国内…

笔试面试题——二叉树进阶(二)

&#x1f4d8;北尘_&#xff1a;个人主页 &#x1f30e;个人专栏:《Linux操作系统》《经典算法试题 》《C》 《数据结构与算法》 ☀️走在路上&#xff0c;不忘来时的初心 文章目录 一、二叉搜索树与双向链表1、题目讲解2、思路讲解递归展开图3、代码实现 二、从前序遍历和中序…

安装向量数据库milvus可视化工具attu

使用docker安装的命令和简单就一个命令&#xff1a; docker run -p 8000:3000 -e MILVUS_URL{milvus server IP}:19530 zilliz/attu:v2.3.5sunyuhuasunyuhua-HKF-WXX:~/dockercom/milvus$ docker run -p 8000:3000 -e MILVUS_URL127.0.0.1:19530 zilliz/attu:latest yarn run…

pulsed-phase thermography (PPT)汉语意思是什么,用来干什么的?

问题描述&#xff1a;pulsed-phase thermography (PPT)汉语意思是什么&#xff0c;用来干什么的&#xff1f; 问题解答&#xff1a; "Pulsed-Phase Thermography"&#xff08;PPT&#xff09;翻译为中文是脉冲相位热成像。这是一种热成像技术&#xff0c;常用于材料…

Xcode查看APP文件目录

一、连接真机到MAC电脑上 二、打开Devices 点击window -> Devices and Simulatores 三、选中设备、选择app 四、选择下载内容 五、查看文件内容 得到的文件 右键显示包内容&#xff0c;获得APP内数据 六、分发证书无法下载 使用分发的证书无法下载文件内容&#xf…

(delphi11最新学习资料) Object Pascal 学习笔记---第2章第五节(日期和时间)

Object Pascal 学习笔记&#xff0c;Delphi 11 编程语言的完整介绍 作者: Marco Cantu 笔记&#xff1a;豆豆爸 2.5 日期和时间 ​ 早期版本的Pascal 语言中&#xff0c;没有原生的日期和时间类型&#xff0c;但是 Object Pascal 引入了一种原生的日期和时间类型&#xff0c;…