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

yq处理多文档YAML时如何移除输出结果中的---分隔符

解决方案

方法1:使用内置参数(推荐)

yq 4.x版本内置了--no-doc-separators参数(可简写为-N),专门用于关闭多文档输出时的---分隔符,修改后的命令如下:

echo '---\nfoo: foo\n---\nfoo: foo\n' | yq eval --no-doc-separators '.foo' -

使用简写参数的版本:

echo '---\nfoo: foo\n---\nfoo: foo\n' | yq eval -N '.foo' -

方法2:表达式处理(兼容所有yq4版本)

如果使用的版本不支持上述参数,也可以通过YQL表达式将所有结果收集到数组后展开,自动省略分隔符:

echo '---\nfoo: foo\n---\nfoo: foo\n' | yq eval '[.foo] | .[]' -

原理解释

默认情况下yq处理多文档YAML输入时,输出的多份结果会自动用---分隔,两种方案分别通过参数配置、表达式结构调整的方式关闭了分隔符输出,最终得到无分隔的连续结果。

内容的提问来源于stack exchange,提问作者mellow-yellow

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 09:54:03