![jq - 문자열로 시작하거나 문자열을 포함하는 키를 기반으로 속성 선택](https://linux55.com/image/218065/jq%20-%20%EB%AC%B8%EC%9E%90%EC%97%B4%EB%A1%9C%20%EC%8B%9C%EC%9E%91%ED%95%98%EA%B1%B0%EB%82%98%20%EB%AC%B8%EC%9E%90%EC%97%B4%EC%9D%84%20%ED%8F%AC%ED%95%A8%ED%95%98%EB%8A%94%20%ED%82%A4%EB%A5%BC%20%EA%B8%B0%EB%B0%98%EC%9C%BC%EB%A1%9C%20%EC%86%8D%EC%84%B1%20%EC%84%A0%ED%83%9D.png)
입력.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"