例えば Name=hoge かつ Role=fuga のインスタンスの ID と AZ を表示する場合。
見やすくするために無理やり改行を入れています。
aws ec2 describe-instances --query 'Reservations[].Instances[] '\
'| [? Tags[?Key==`Name`][] | [?Value==`hoge`] ] '\
'| [? Tags[?Key==`Role`][] | [?Value==`fuga`] ] '\
'| [][InstanceId,Placement.AvailabilityZone]'
あるいは、次のように書いたほうが見やすいでしょうか。
aws ec2 describe-instances --query "$(echo 'Reservations[].Instances[]
| [? Tags[?Key==`Name`][] | [?Value==`hoge`] ]
| [? Tags[?Key==`Role`][] | [?Value==`fuga`] ]
| [][InstanceId,Placement.AvailabilityZone]
')"
タグでの検索なら filter でもできるので filter の方が簡単です。
aws ec2 describe-instances --filter \
'Name=tag:Name,Values=hoge' \
'Name=tag:Role,Values=fuga' \
--query 'Reservations[].Instances[][InstanceId,Placement.AvailabilityZone]'