aws ec2 describe-volumesコマンドから、filter、query、outputを使って取得できましたのでメモ。
①aws ec2 describe-volumes→ボリューム情報の取得
②--filters "Name=attachment.instance-id, Values=<インスタンスID>" "Name=attachment.device, Values=<デバイスID>"
→一覧からインスタンスIDとデバイスIDでフィルタ
・インスタンスID:説明不要
・デバイスID:Windows のデバイスは、ルートデバイスは「/dev/sda1」、追加デバイスは「xvdf」から「xvdp」
③--query "Volumes[].Attachments[].VolumeId[]"
→ボリュームIDだけ抽出
④--output text
→テキスト形式で出力
バッチで書くと以下の記述で変数に格納できます。
------------------ここから------------------
@echo off
set VolID=
set Ec2ID=<インスタンスID>
set DevID=<デバイスID>
set CMD=aws ec2 describe-volumes --filters "Name=attachment.instance-id, Values=%Ec2ID%" "Name=attachment.device, Values=%DevID%" --query "Volumes[].Attachments[].VolumeId[]" --output text
for /f "usebackq delims=" %%a in (`%CMD%`) do set VolID=%%a
echo %VolID%
pause
------------------ここまで------------------
echo 以降は確認の為に付けただけなので、省略してください。
0 件のコメント:
コメントを投稿