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

通过kubectl向K8s应用YAML折叠块标量样式未符合预期

你对>-折叠块标量的转换规则理解存在偏差,并非所有换行都会被自动替换为空格,仅符合特定条件的换行才会触发折叠:

  • YAML 规范中,>-折叠块标量仅会将换行后跟随的行缩进与当前块基准缩进一致的换行符替换为单个空格
  • 如果换行后跟随的行缩进大于当前块基准缩进,该换行符会被直接保留,不会执行折叠

对应你的示例,folded字段下的首行{是块基准缩进,后续的"field1": 1、"test2": "test"行的缩进都比基准缩进更深,所以行之间的换行全部被保留,最终输出表现和|-字面量块一致。

单引号字符串的表现和折叠块不同,是因为YAML解析单引号包裹的字符串时,会自动将字符串内部所有换行符、以及换行后跟随的连续空白字符合并为单个空格,所以不管内部如何换行缩进,最终都会输出为单行内容。

如果要让>-折叠块输出单行,可将所有内容行调整为相同的基准缩进,示例如下:

folded: >-
  {
  "field1": 1,
  "test2": "test"
  }

上述配置解析后输出结果和single-quoted字段完全一致。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 21:15:05