如何从实例名称获取ec2实例ID

时间:2019-05-16 19:43:15

标签: aws-powershell

我想从它的名称中检索一个ec2实例的ID,我将该ID设置为其标签的值。我有一个虚拟机,其键为“名称”,值为“ testvm1”。是否有

之类的东西

(get-ec2 instance id) | where-object {$_.(key.value) - eq "testvm1"}

2 个答案:

答案 0 :(得分:1)

这有效

 $ec2Name = New-Object Amazon.EC2.Model.Filter -Property @{Name = "tag:Name"; Values = "testvm1"}
    $instances = @(Get-EC2Tag -Filters $ec2Name) 
      $instances | Select-Object -ExpandProperty resourceid

答案 1 :(得分:1)

您可以通过传递hashtable作为过滤器来进一步减少这种情况。这会将您的输入映射到Amazon.EC2.Model.Filter[]类型。

tag:Name上使用一个过滤器映射多个标签名称的示例:

(Get-EC2Tag -Filter @{Name="tag:Name";Values="Name1","Name2"}).ResourceId

示例输出:

i-abcd1234
i-edfg5678