Saya menggunakan aws-cli versi 1.7.8 untuk mendapatkan --query
output untuk membuat satu record yang diturunkan dari beberapa baris. Dalam hal ini saya mencoba mendapatkan informasi spesifik dari describe-instances
.
Dalam describe-instances
perintah, kita mendapatkan garis / bagian yang merujuk kepada RESERVATIONS
, INSTANCES
, dan TAGS
.
Saya dapat menjalankan perintah AWS CLI baru untuk mendapatkan informasi dari ketiga baris secara individual:
Baris PEMESANAN:
aws ec2 describe-instances --instance-ids i-xxxxxxxx --query 'Reservations[*].ReservationId'
Baris INSTANCE:
aws ec2 describe-instances --instance-ids i-xxxxxxxx --query 'Reservations[*].[Instances[*].[InstanceId,ImageId]]'
Klimaks:
aws ec2 describe-instances --instance-ids i-xxxxxxxx --query 'Reservations[].Instances[].[Tags[?Key==
Nama]]'
Saya dapat menjalankan 3 perintah ini, dan menggabungkan hasilnya untuk membentuk 1 catatan.
Adakah yang tahu kalau ada cara saya bisa menjalankan ini sebagai SATU (1) perintah, bukannya 3 perintah yang berbeda?
Saya sudah mencoba PIPE dan bentuk sintaks lainnya, tetapi saya belum dapat menemukan solusi yang baik.
Bisakah saya mendapatkan output setara dari 3 perintah ini dari satu perintah?
sumber
Jawaban:
Perintah ini akan mencetak Instance Id, AMI ID, Key dan Value Tag. Anda dapat melihat lebih banyak contoh di sini: Mengontrol Output Perintah dari Antarmuka Baris Perintah AWS
sumber
Dengan Windows (cmd.exe, cmder.exe, dll.), Seseorang harus menggunakan tanda kutip ganda (") alih-alih tanda kutip tunggal (') di sekitar string kueri. Jika tidak, konsol hanya mencetak jalur dalam kueri dan bahkan tidak menghasilkan kesalahan.
sumber