sh 构筑后に降价形式でEC2のリソース情报を吐き出すスクリプト
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sh 构筑后に降价形式でEC2のリソース情报を吐き出すスクリプト相关的知识,希望对你有一定的参考价值。
#!/bin/bash
## Profile名の取得
if [[ -z "$1" ]]; then
echo "Profile名を指定してください"
exit 1
fi
profile=$1
BASE_OPTS="--output text --profile ${profile}"
## インスタンスIDの取得
InstanceIds=$(aws ec2 describe-instances --query "Reservations[].Instances[].InstanceId" ${BASE_OPTS})
if [[ -z "${InstanceIds}" ]]; then
echo "インスタンスIDが取得出来ませんでした"
exit 1
fi
rows="|Tag名|用途|インスタンスID|グローバルIPアドレス|ブライベートIPアドレス|インスタンスタイプ|ディスクサイズ|OS|AMIバックアップ|備考|"
rows="${rows}""\n""| ------------- | ------------- |"
for InstanceId in ${InstanceIds}
do
## パブリックIPの取得
PublicIP=$(aws ec2 describe-instances --instance-ids "${InstanceId}" --query "Reservations[].Instances[].PublicIpAddress" ${BASE_OPTS})
## プライベートIPの取得
PrivateIP=$(aws ec2 describe-instances --instance-ids "${InstanceId}" --query "Reservations[].Instances[].PrivateIpAddress" ${BASE_OPTS})
## インスタンスタイプの取得
InstanceType=$(aws ec2 describe-instances --instance-ids "${InstanceId}" --query "Reservations[].Instances[].InstanceType" ${BASE_OPTS})
## Nameタグの取得
NameTag=$(aws ec2 describe-instances --instance-ids "${InstanceId}" --query "Reservations[].Instances[].Tags[?Key==\`Name\`]" ${BASE_OPTS})
## EBSのサイズの取得
DiskSize=$(aws ec2 describe-volumes --filters "Name=attachment.instance-id,Values=${InstanceId}" --query "Volumes[].Size" ${BASE_OPTS})
row="| ${NameTag} | | ${InstanceId} | ${PublicIP} | ${PrivateIP} | ${InstanceType} | ${DiskSize}GB | | | |"
rows="${rows}""\n""${row}"
done
echo -e ${rows}
以上是关于sh 构筑后に降价形式でEC2のリソース情报を吐き出すスクリプト的主要内容,如果未能解决你的问题,请参考以下文章
sh nasneから取得したxmlを快乐的映射器でパース
markdown 红宝石葡萄でネストしたリソースのAPI
html 降价形式でと标题URLを表示するブックマークレット
ruby Code Schoolのユーザ情报をリクエストしてJSON形式で取得
text node.js中で简易サーバを构筑
sh 苹果のクリーンインストール后に実行するシェル