我想要一个循环,可以指定我想要的增量的数目,并且我希望通过1来增加一些参数,比如$ipconfig $Ipconfigname $publicip和10.0.0.25
我想要的结果是:
#####################################
# Create a public IP address 1
$PublicIP1 = New-AzPublicIpAddress `
-Name "q9r933209h1" `
-ResourceGroupName $RgName `
-Location $Location `
-AllocationMethod dynamic
#Create an IP configuration with a dynamic private IP address and assign the public IP address to it
$IpConfigName1 = "00iifcow5n1"
$IpConfig1 = New-AzNetworkInterfaceIpConfig `
-Name $IpConfigName1 `
-Subnet $Subnet `
-PrivateIpAddress 10.0.0.25 `
-PublicIpAddress $PublicIP1
#####################################
# Create a public IP address 2
$PublicIP2 = New-AzPublicIpAddress `
-Name "q9r933209h2" `
-ResourceGroupName $RgName `
-Location $Location `
-AllocationMethod dynamic
#Create an IP configuration with a dynamic private IP address and assign the public IP address to it
$IpConfigName2 = "00iifcow5n2"
$IpConfig2 = New-AzNetworkInterfaceIpConfig `
-Name $IpConfigName2 `
-Subnet $Subnet `
-PrivateIpAddress 10.0.0.26 `
-PublicIpAddress $PublicIP2
#####################################
# Create a public IP address 3
$PublicIP3 = New-AzPublicIpAddress `
-Name "q9r933209h3" `
-ResourceGroupName $RgName `
-Location $Location `
-AllocationMethod dynamic
#Create an IP configuration with a dynamic private IP address and assign the public IP address to it
$IpConfigName3 = "00iifcow5n3"
$IpConfig3 = New-AzNetworkInterfaceIpConfig `
-Name $IpConfigName3 `
-Subnet $Subnet `
-PrivateIpAddress 10.0.0.27 `
-PublicIpAddress $PublicIP3我想要一个循环来创建这个x号
#####################################
# Create a public IP address 1
$PublicIP1 = New-AzPublicIpAddress `
-Name "q9r933209h1" `
-ResourceGroupName $RgName `
-Location $Location `
-AllocationMethod dynamic
#Create an IP configuration with a dynamic private IP address and assign the public IP address to it
$IpConfigName1 = "00iifcow5n1"
$IpConfig1 = New-AzNetworkInterfaceIpConfig `
-Name $IpConfigName1 `
-Subnet $Subnet `
-PrivateIpAddress 10.0.0.25 `
-PublicIpAddress $PublicIP1一个接一个的循环,我想运行这个命令
$NIC = New-AzNetworkInterface `
-Name X `
-ResourceGroupName $RgName `
-Location $Location `
-NetworkSecurityGroupId $NSG.Id `
-IpConfiguration $IpConfig1, $IpConfig2, $IpConfig3, .....,$IpConfig(x time)发布于 2020-10-28 14:43:47
有几种方法可以循环。在本例中,我使用了创建数组并将其输送到foreach对象的方法。您不必使用$($_),您可以只使用$_,但我添加它是为了提高可读性。
$Loop = 3
(1..$Loop) | foreach-object{
#####################################
# Create a public IP address 1
$PublicIP1 = New-AzPublicIpAddress `
-Name "q9r933209h$($_)" `
-ResourceGroupName $RgName `
-Location $Location `
-AllocationMethod dynamic
#Create an IP configuration with a dynamic private IP address and assign the public IP address to it
$IpConfigName1 = "00iifcow5n$($_)"
$IpConfig1 = New-AzNetworkInterfaceIpConfig `
-Name (Get-Variable -Name "IpConfigName$($_)" -ValueOnly) `
-Subnet $Subnet `
-PrivateIpAddress "10.0.0.$(25 + ($_ - 1))" `
-PublicIpAddress (Get-Variable -Name "PublicIP$($_)" -ValueOnly) `
}发布于 2020-10-28 20:47:09
像这样的事情应该有效:
$x = 4
$publicIpParams = @{
ResourceGroupName = $RgName
Location = $Location
AllocationMethod = 'Dynamic'
}
$ipConfiguration = 1..$x | ForEach-Object {
$publicIP = New-AzPublicIpAddress @publicIpParams -Name ("q9r933209h{0}" -f $_)
$ipcParams = @{
Name = "00iifcow5n{0}" -f $_
Subnet = $Subnet
PrivateIpAddress = '10.0.0.{0}' -f (24 + $_)
PublicIpAddress = $publicIp
}
New-AzNetworkInterfaceIpConfig @ipcParams
}
$niParams = @{
Name = 'X'
ResourceGroupName = $RgName
Location = $Location
NetworkSecurtyGroupId = $nsg.Id
IpConfiguration = $ipConfiguration
}
New-AzNetworkInterface @niParamshttps://stackoverflow.com/questions/64574826
复制相似问题