jq - 文字列で始まる文字列を含むキーに基づいて属性を選択する

jq - 文字列で始まる文字列を含むキーに基づいて属性を選択する

入力.json

{
  "Stack": {
    "KeypairNameB651C0C1": "key-0123456abcdefg",
    "AsgNameA7D05B90": "my-asg-name"
  }
}

キー名は変更できますが、常に設定された文字列で始まります。

エマルジョンここselect(startswith("AsgName"))しかし何とか

jqを実装できますか?

ベストアンサー1

キーを使用to_entries/アクセスできます。with_entries

$ 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"

おすすめ記事