我正在尝试使用PowerShell将新的EC2标记一次添加到多个实例。我的所有实例都以
格式标记name : $Env_$Role_$Number
但是,我无法为我现在需要的每个实例单独放置Environment: Production
标签。我在PowerShell中执行以下操作,以获取表中所需实例的列表。
$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:)
应用于该数组?
答案 0 :(得分:0)
我意识到我可以将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}