You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

寻求yq命令:提取YAML文件services下的name字段

使用yq提取YAML中services列表的name字段

针对你的需求,不同版本的yq工具对应不同的命令,以下是主流版本的实现方式:

mikefarah/yq(v4+,当前常用版本)

执行以下命令即可只保留services列表中每个元素的name键值对:

yq '.services |= map({name: .name})' input.yaml

命令说明

  • .services定位到目标列表
  • map({name: .name})遍历列表中的每个对象,仅保留name字段
  • |=将处理后的结果重新赋值给.services,保证输出结构完整

kislyuk/yq(Python实现的旧版本)

如果你使用的是基于Python的yq,可以用这个命令:

yq -y '.services[] |= {name: .name}' input.yaml

命令说明

  • .services[]遍历services下的每个元素
  • {name: .name}保留当前元素的name字段
  • -y参数指定输出为YAML格式

示例验证

输入YAML:

services:
  - name: svc1
    location: asia
    timezone: india
  - name: svc2
    location: europe
    timezone: uk
    cities:
      - london
  - name: svc3
    location: usa
    timezone: east
    cities:
      - new-york
      - brooklyn

执行命令后输出:

services:
  - name: svc1
  - name: svc2
  - name: svc3

内容的提问来源于stack exchange,提问作者jrz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 16:32:05