jq ( http://stedolan.github.io/jq/ ) を使用して、aws elb describe-load-balancers からの json 出力を解析し、AvailabilityZones に特定の値が含まれている場合にのみ名前と AZ を返したいと思います。
ソース出力を表す部分的に編集された json を次に示します。
{
"LoadBalancerDescriptions": [
{
{
"AvailabilityZones": [
"us-east-1b",
"us-east-1c",
"us-east-1d"
],
"CanonicalHostedZoneName": "example.us-east-1.elb.amazonaws.com",
AvailabilityZones キーの値の完全なリストを指定した場合にのみ、これを機能させることができました。
$ aws elb describe-load-balancers --region us-east-1 |jq '.LoadBalancerDescriptions[] | select(.AvailabilityZones == ["us-east-1b", "us-east-1c", "us-east-1d"]) | .CanonicalHostedZoneName, .AvailabilityZones'
上記は機能しますが、他の値に関係なく、「us-east-1b」の値が含まれているかどうかを選択したいだけです。