【发布时间】:2022-06-15 14:58:42
【问题描述】:
我正在编写一个脚本,我通过 JQ 获取环境变量,并且我需要它们以 KV 对的形式用于其他类型的文件。目前,我在 Bash 数组中有如下元素
DD_TRACE_CLI_ENABLED:true
PRODUCT:buy_box
TRACE_ID:$NOMAD_ALLOC_ID
现在,当我打印时,我需要这样:
- name: DD_TRACE_CLI_ENABLED
value: true
- name: PRODUCT
value: buy_box
我当前的代码
if [ ! -z "$env_params" -a "$env_params" != " " ]; then
env_params_as_array=(${env_params//,/ })
for each in "${env_params_as_array[@]}"
do
echo $each
echo -e "${myCustomIndentTab}- $each" >> values-$1.yaml
done
fi
我怎样才能做到这一点?谢谢。
【问题讨论】:
-
您似乎想要生成 YAML。数据来自
jq,为什么不使用yq? -
如果您仍然使用
jq,可能使用该工具以您想要的方式格式化输出。参见例如stackoverflow.com/a/68168384/874188