将JSON对象转换为Bash关联数组

将JSON对象转换为Bash关联数组,第1张

将JSON对象转换为Bash关联数组

如果您想要键和值,并且基于如何在JQ中将json对象转换为key =value格式,则可以执行以下 *** 作:

$ jq -r "to_entries|map("(.key)=(.value|tostring)")|.[]" fileSALUTATION=Hello worldSOMETHING=bla bla bla Mr. Freeman

以更通用的方式,您

myarray[key] =value
只需将语法提供
jq
给,就可以将值存储到这样的数组中:
while``while ...do; ... done < <(command)

declare -A myarraywhile IFS="=" read -r key valuedo    myarray[$key]="$value"done < <(jq -r 'to_entries|map("(.key)=(.value)")|.[]' file)

然后您可以遍历像这样的值:

for key in "${!myarray[@]}"do    echo "$key = ${myarray[$key]}"done

对于此给定的输入,它将返回:

SALUTATION = Hello worldSOMETHING = bla bla bla Mr. Freeman


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4926622.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-12
下一篇 2022-11-12

发表评论

登录后才能评论

评论列表(0条)

保存