PowerShell/CLI: “Foreach” en boucle avec plusieurs tableaux

J'ai un script PowerCLI qui éteint une machine virtuelle, les changements de sa mémoire et de cpu, et puis les pouvoirs sur le dos. J'ai adapté le script à utiliser des variables. Tout cela fonctionne parfaitement.

Je vais maintenant essayer de modifier le script à utiliser des tableaux, afin de cycle à travers de nombreuses machines virtuelles. Le script parties qui s'éteint et s'allume le VMs fonctionne parfaitement.

La peine que je vais avoir, c'est à l'aide de variables à partir de deux tableaux dans une boucle foreach.

Pour chaque VM dans $vm_name, j'ai besoin de régler le montant correspondant de la mémoire trouvés dans $memory_gb.

C'est ce que j'ai (actuellement il définit la même quantité de mémoire ("1") pour toutes les machines virtuelles)....

$vm_name = @("OMAC-SBXWIN7AJM", "OMAC-SBXWIN2012R2AJM", "OMAC-SBXWIN2008R2AJM")
$memory_gb = 2,4,4

# SET THE VM MEMORY
Write-Host 'NOW SETTING THE VM MEMORY'
foreach ($objItem in $vm_name)
{Set-VM -VM $vm_name -MemoryGB 1 -confirm:$false 
Break
}

http://i.stack.imgur.com/E9hfY.png

...J'ai essayé de nidification d'une deuxième boucle foreach à l'intérieur de la première, en vain.

Comment écrire le script de sorte que chaque machine virtuelle dans $vm_name, reçoit le montant correspondant de la mémoire trouvés dans $memory_gb?

OriginalL'auteur James McCallister | 2014-08-07