tryin to get ec2volume mounted ec2instances

0

I am trying to get the volumes mounted on my ec2instance

get-ec2volume -filter @{name='attachment.instance-id'; values="*"} |? {$_.Attachments.InstanceId -eq 'i-xxxxxxxxxxxx'}

but I also want to get the Tag with Name as well.

any idea?

drago
已提問 2 年前檢視次數 202 次
1 個回答
0

What is the expected output you are looking for? Tags are returned as part of Get-EC2Volume command output. If you are trying to specifically return a list of tags for a particular EBS volume based on an EC2 instance ID, then you can try something like this:

# Print Instance ID and Tags for a particular EC2 instance's EBS volume
$tagKeyValue = ""
get-ec2volume -filter @{name = 'attachment.instance-id'; values = "*" } | % { 
    if ($_.Attachments.InstanceId -eq '<instance id>') {
        # Concatenate tags in a string (key:value;key2:value2...)
        if ($_.Tags.Count -gt 0) {
            $counter = 0
            while ($counter -lt $_.Tags.Count) {
                $tagKeyValue += ("{0}:{1};" -f $_.Tags[$counter].Key, $_.Tags[$counter].Value)
                write-host $counter
                $counter++
            }
        } 
        @{
            InstanceId = $_.Attachments.InstanceId
            Tags       = $tagKeyValue
        }
    }
}

Sample output

Name                           Value
----                           -----
Tags                           Name:test.local;test:test;
InstanceId                     i-xxxxxxxxxxxxxxxxxxxxxxx
AWS
Taka_M
已回答 2 年前

您尚未登入。 登入 去張貼答案。

一個好的回答可以清楚地回答問題並提供建設性的意見回饋,同時有助於提問者的專業成長。

回答問題指南