【发布时间】:2022-08-21 16:47:32
【问题描述】:
假设我有如下所示的 YAML 文件:
FOO: somefoo
BAR: somebar
我想将此(使用yq)转换为以下内容,以便我可以将内容导入环境变量:
export BAR=\'somebar\'
export FOO=\'somefoo\'
我可以通过首先将输入转换为 JSON 来使用 jq 来做到这一点,但我似乎无法弄清楚如何仅使用 yq 来做到这一点。 (我正在使用yq 4.x,<4.18)。
那么,具体来说,我如何仅使用yq 来执行以下操作?
INPUT=\"FOO: somefoo
BAR: somebar\"
echo \"$INPUT\" | yq e \'to_json\' - | jq -r \'keys[] as $k | \"export \\($k)=\'\\\'\'\\(.[$k])\'\\\'\'\"\'
-
这对于现有的 Go yq 结构是不可能的