एक्वा कमांड लाइन टूल से इसके नाम से ec2 उदाहरण खोजें


32

मेरे पास एक उदाहरण है dev-server-03। अब मैं dev-server-*कमांड लाइन से सभी उदाहरण कैसे खोज सकता हूं ?

मैं aws cli टूल का उपयोग कर रहा हूं।


यह इस बात पर निर्भर करता है कि आपने उदाहरण का नाम कैसे रखा है। क्या आपने ओएस के अंदर होस्टनाम सेट किया था, एडब्ल्यूएस कंसोल पर या दोनों पर?
क्रेग वाटसन

OS होस्टनाम के अंदर हाँ उसी नाम पर सेट है।
शिप्पू मोकादिम

जवाबों:


55

यह मानते हुए कि आप "नाम" की कुंजी के साथ एक टैग में उदाहरण का नाम डालने के सम्मेलन का उपयोग कर रहे हैं (यह वही है जो AWS कंसोल तब करता है जब आप एक नाम दर्ज करते हैं), तो आप --filtersउन उदाहरणों को सूचीबद्ध करने के लिए विकल्प का उपयोग कर सकते हैं एडब्ल्यूएस-CLI:

aws ec2 describe-instances --filters 'Name=tag:Name,Values=dev-server-*'

यदि आप सिर्फ उन उदाहरणों के उदाहरण आईडी चाहते हैं, तो आप उपयोग कर सकते हैं:

aws ec2 describe-instances --filters 'Name=tag:Name,Values=dev-server-*' \
  --output text --query 'Reservations[*].Instances[*].InstanceId'

नोट: --queryaws-cli के हाल के संस्करण की आवश्यकता हो सकती है लेकिन यह प्राप्त करने के लायक है।


1
Omg इसे पता लगाने में मुझे लगभग आधा घंटा लगा ... यह कितना अजीब है:Name=tag:Name
lisak

1
धन्यवाद एरिक - मुझे आपकी क्वेरी का उपयोग करते हुए एक ही लाइन पर कई उदाहरण आईडी मिल रहे थे, लेकिन github.com/aws/aws-cli/issues/914#issuecomment-56210312 ने सुझाव दिया --query 'Reservations[].Instances[].[InstanceId]कि मेरे लिए काम करता है
jayboby

3
FWIW, jqटूल का उपयोग aws --queryइस तरह के समान परिणाम प्राप्त करने के लिए किया जा सकता है : aws ec2 describe-instances | jq '.Reservations[].Instances[].PrivateIpAddress'- पूर्ववर्ती .डॉट।
मार्कहु 19

क्या आप वर्णन-दृष्टांत फ़िल्टर केस को असंवेदनशील बना सकते हैं?
red888

3

आप नीचे दिए गए नाम, उदाहरण आईडी और निजी आईपी के साथ आगे फ़िल्टर कर सकते हैं,

aws ec2 describe-instances --filters "Name=tag:Name,Values=*myinstance*" --output json --query 'Reservations[*].Instances[*].[PrivateIpAddress,InstanceId,Tags[?Key==`Name`].Value]' --region us-east-1
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.