![](/img/trans.png)
[英]How can I combine AWS EC2 describe-instances with describe-image?
[英]Show error message on null return for AWS CLI describe-instances
我有一個bash腳本,它根據用戶的參數來調用各種實例的IP。 現在,如果他們的查詢與腳本不匹配,則根本不會返回任何內容,甚至不會返回null
。 我很想結合某種錯誤處理來提示用戶重試。 從內置的AWS函數到自定義錯誤消息,這可能是什么,我對此並不挑剔。
我的腳本如下:
#!/usr/bin/env bash
set -e
#READ ARGUMENTS PASSED IN - expects stack name
if [ "$#" != 1 ]; then
echo "Illegal number of parameters. Expecting 1: stack name"
exit 1
fi
name=$1
aws ec2 describe-instances --query "Reservations[].Instances[].[PublicIpAddress,Tags[?Key=='Name'].Value]" --filter Name=tag:Name,Values=${name} --output text
如果成功,我會得到類似
00.00.00.000
name-of-instance
但是如果失敗,我什么也得不到。
如果aws describe-instances不返回匹配項,是否可以提示用戶或顯示錯誤消息?
首先將輸出捕獲到變量中,如下所示:
output=$(aws ec2 describe-instances --query "Reservations[].Instances[].[PublicIpAddress,Tags[?Key=='Name'].Value]" --filter Name=tag:Name,Values=${name} --output text)
然后檢查output
內容。 如果有東西,請將其回顯到屏幕上。 如果沒有,請顯示您的自定義錯誤消息。
output=`aws ec2 describe-instances --query "Reservations[].Instances[].[PublicIpAddress,Tags[?Key=='Name'].Value]" --filter Name=tag:Name,Values=${name} --output text`
if [ -n "$output" ]; then
echo "$output"
else
echo "No such instance $name exists"
fi
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.