yq 在结果中省略文档分隔符 (---)
yq omit document dividers (---) in result
在yq 4.11.2中,如果我这样做:
echo '---\nfoo: foo\n---\nfoo: foo\n' | yq eval '.foo' -
我明白了:
foo
---
foo
仅使用 yq(不使用 grep、awk 等),我怎样才能删除 ---
来得到这个?
foo
foo
您的 echo
调用存在问题,默认情况下它不会扩展文字换行符,除非您 运行 使用 echo -e
或启用 xpg_echo
shell 选项,如果您 运行 在 bash/zsh
上使用此选项
mikefarah/yq 实现有一个模式 -N
打印没有文档分隔符的过滤器输出见 yq --help
在版本 4.13.3
上测试时
echo -e '---\nfoo: foo\n---\nfoo: foo\n' | yq -N e '.foo' -
foo
foo
在yq 4.11.2中,如果我这样做:
echo '---\nfoo: foo\n---\nfoo: foo\n' | yq eval '.foo' -
我明白了:
foo
---
foo
仅使用 yq(不使用 grep、awk 等),我怎样才能删除 ---
来得到这个?
foo
foo
您的 echo
调用存在问题,默认情况下它不会扩展文字换行符,除非您 运行 使用 echo -e
或启用 xpg_echo
shell 选项,如果您 运行 在 bash/zsh
mikefarah/yq 实现有一个模式 -N
打印没有文档分隔符的过滤器输出见 yq --help
在版本 4.13.3
echo -e '---\nfoo: foo\n---\nfoo: foo\n' | yq -N e '.foo' -
foo
foo