我有以下输入json:
{
"TagList": [
{
"Key": "Environment",
"Value": "foo"
},
{
"Key": "ENVIRONMENT",
"Value": "bar"
}
]
}我希望使用jq获取带有键环境的标记值。
jq -r '.TagList[] | select(.Key=="ENVIRONMENT") | .Value' input.json但事实证明,关键也可能是Environment。我尝试使用以下命令来获得这两个命令:
jq -r '.TagList[] | select((.Key=="ENVIRONMENT") | .Value' or .Key=="Environment" | .Value)但是,得到以下错误:
jq: error: syntax error, unexpected $end, expecting ';' or ')' (Unix shell quoting issues?) at <top-level>, line 1:
.TagList[] | select((.Key=="ENVIRONMENT") | .Value
jq: 1 compile error怎么弄到这两个标签?
发布于 2018-11-23 15:14:10
您可以使用以下命令:
jq '.TagList[]|select(.Key=="Environment" or .Key=="ENVIRONMENT").Value'发布于 2018-11-23 18:20:51
略为概括:
.TagList[]
| select(.Key | ascii_upcase == "ENVIRONMENT").Valuehttps://stackoverflow.com/questions/53448845
复制相似问题