用途:该技能提供使用 yq v4+(类 jq 语法的轻量命令行 YAML 处理器)查询、过滤和转换 YAML 数据的专业知识。适用于查询或修改 YAML 文件、原地编辑并保留注释与键顺序、定向更新 Kubernetes 清单或 Actions 工作流、合并 YAML 配置。若输入仅为 JSON 应改用 jq;跨 YAML/JSON/CSV/TOML 的多步转换或跨多文件聚合分组应改用 nushell;完整 Kubernetes 管理用 kubectl,XML 用 xmlstarlet。
主要能力:路径表达式查询过滤、结构转换、多文档 YAML 支持、YAML/JSON/XML 等格式互转;修改 Kubernetes 清单、GitHub Actions 工作流、Helm values 文件和应用配置。
常用命令:yq '.' file.yaml 美化输出;yq '.spec.containers[0].name' pod.yaml 取嵌套字段;yq -i '.spec.replicas = 3' deployment.yaml 原地修改;yq -s '.metadata.name' multi-doc.yaml 拆分多文档;yq eval-all '.' multi-doc.yaml 处理全部文档;yq -o=json -I=0 '.' file.yaml 输出紧凑 JSON 供管道使用。常用操作符有 .field、.[]、|、//、、+;函数有 keys、select()、sort_by()、group_by()、del() 等;标志有 -i、-o、-p、-I、-r、-n、-s。
限制:资料未提供安装方式、版本兼容细节及收费信息。官方文档见 https://mikefarah.gitbook.io/yq/,仓库见 https://github.com/mikefarah/yq,可用 Docker 试用:docker run --rm -i mikefarah/yq '.key' <<< 'key: value'。