我尝试使用PowerShell向多个示例同时添加一个新的EC2标记。我的所有示例都使用以下格式标记
name : $Env_$Role_$Number
然而,我没有为每个示例放置一个单独的Environment: Production
标记,我现在需要。我运行到PowerShell中的following,以获取表中所需的示例列表。
$ProdTag = New-Object Amazon.EC2.Model.Filter
$ProdTag.Name = "tag:Name"
$ProdTag.Values = "PROD*"
$Instances = New-Object Amazon.EC2.Model.Filter
$Instances.Name = "tag:resource-type"
$ProdTag.Values = "instance"
Get-EC2Tag -Filter ($ProdTag, $Instances)
这将输出我想要的示例列表。我如何获取ResourceType
列,将其存储在一个数组中并将New-EC2Tag -tag (Name="tag: Environment, Value="Production:)
应用于该数组?
2条答案
按热度按时间nzk0hqpo1#
我意识到我可以将
Get-EC2Tag -Filter ($ProdTag, $Instances)
存储为PowerShell中的对象:$ProdInstances = (Get-EC2Tag -Filter ($ProdFilter, $InstanceFilter)).ResourceID
然后我创建了一个
$ProdEnvTag
对象,将Environment:Production
作为标签应用于$ProdInstances
对象中的所有内容:$ProdInstances | ForEach-Object {New-EC2Tag -Resource $_ -Tag $ProdEnvTag}
piok6c0g2#
使用标签编辑器AWS服务。您可以过滤(或)选择所有EC2示例并创建一个类似ENV=DEV的标签并应用于资源。这非常有用。