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

如何用yq将多个YAML文件内容追加到root.yml的myList列表?

使用yq批量将YAML文件内容追加到列表

针对你的需求,用 mikefarah/yq v4+(目前最常用的yq版本)可以轻松实现从文件加载内容并追加到root.yml的myList列表中,无需硬编码。

指定单个/多个文件的场景

如果明确知道要追加的文件名(比如1.yml、2.yml),直接用以下命令:

yq eval '.myList += [load("1.yml"), load("2.yml")]' root.yml
  • .myList +=:表示向myList数组追加新元素
  • load("文件名"):读取指定YAML文件的完整内容,将其作为单个元素加入数组
  • 执行后控制台会直接输出合并后的完整YAML内容

批量匹配文件的场景

如果要处理文件夹中除root.yml外的所有YAML文件,用通配符匹配更高效:

yq eval '.myList += load_range("*.yml" | select(. != "root.yml"))' root.yml
  • load_range("匹配规则"):批量加载所有符合规则的YAML文件,每个文件内容自动作为数组的一个元素
  • select(. != "root.yml"):排除root.yml本身,避免把它也加入目标列表

执行结果示例

运行命令后,控制台会输出你预期的格式:

keyA: valA
keyB: valB
myList:
  - project_id: abc
    description: xyz
  - project_id: cba
    description: zyx

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 18:45:41