我有一个像这样的 JSON 数组:
{
"SITE_DATA": {
"URL": "example.com",
"AUTHOR": "John Doe",
"CREATED": "10/22/2017"
}
}
我希望使用 jq 迭代这个数组,这样我就可以将每个项目的键设置为变量名,并将值设置为它的值。
例子:
- URL="example.com"
- 作者=“约翰·多伊”
- 已创建="2017 年 10 月 22 日"
到目前为止,我对数组进行了迭代,但创建了一个字符串:
constants=$(cat ${1} | jq '.SITE_DATA' | jq -r "to_entries|map(\"\(.key)=\(.value|tostring)\")|.[]")
哪个输出:
URL=example.com
AUTHOR=John Doe
CREATED=10/22/2017
我希望在脚本中进一步使用这些变量:
echo ${URL}
但这与目前的空输出相呼应。我猜我需要一个eval
或一些东西,但似乎无法将我的手指放在它上面。