输入.json
{
"Stack": {
"KeypairNameB651C0C1": "key-0123456abcdefg",
"AsgNameA7D05B90": "my-asg-name"
}
}
键名称可能会有所不同,但始终以设置的字符串开头
类似问题这里select(startswith("AsgName"))
但想以某种方式获得基于a 的值钥匙
jq 可以实现吗?
答案1
您可以使用to_entries
/with_entries
访问密钥 ex。
$ jq '.Stack | with_entries(select(.key | startswith("AsgName")))' file.json
{
"AsgNameA7D05B90": "my-asg-name"
}
或者
$ jq '.Stack | to_entries[] | select(.key | startswith("AsgName")) | .value' input.json
"my-asg-name"