Sim, através da opção --query
.
Esta opção permite filtrar e retornar elementos específicos da estrutura. Existe uma notação curinga [*]
especial que permite iterar sobre listas de objetos; usaremos isso para iterar a lista de instâncias do EC2 e retornar os valores desejados.
Recuperando InstanceID, nome da tag da instância como JSON:
aws ec2 describe-instances --query 'Reservations[*].Instances[*].[InstanceId, Tags[?Key=='Name'].Value | [0]]'
[
[
[
"i-abcd1234",
"MyFirstInstance"
]
],
[
[
"i-efgh5678",
"MySecondInstance"
]
]
]
Recuperando InstanceID, nome da tag da instância como texto:
Se você não quiser trabalhar com o json, também poderá adicionar a opção --output
ao texto de saída:
aws ec2 describe-instances --query 'Reservations[*].Instances[*].[InstanceId, Tags[?Key=='Name'].Value | [0]]' --output text
i-abcd1234 MyFirstInstance
i-efgh5678 MySecondInstance
Leitura adicional: