WeNDiGO
23-10-2016, 02:37
Добрый день, помогите разобраться, почему не хочет выдергивать список имен из сферы, если руками делаю, то выводит, а в скрипте нет. С PS не очень.
Add-PSSnapin VMware*
Connect-VIServer 1.1.1.1
$vAppName = Read-Host "Enter the name of vApp (you may use regular expression)"
$vApps = Get-VApp $vAppName
if ($vApps -eq $null) { exit }
Write-Host "You really want to create snapshots in those vApps?"
Format-List -InputObject $vApps -Property Name
do { $Answer = Read-Host "[y/n]" }
until (($Answer -ieq "y") -or ($Answer -ieq "n"))
if ($Answer -ieq "n") { exit }
$SnapshotName = Read-Host "Enter the name of snapshots"
foreach ($vApp in $vApps) {
Write-Host " "
Write-Host "------------------------------"
Write-Host "Creating snapshots in '$vApp'..."
Write-Host "------------------------------"
$VMs = get-vm * -Location $vApp
foreach ($VM in $VMs) { New-Snapshot -VM $VM -Name $SnapshotName }
}
Если так сделать нельзя, то как запускать процедуру заново не покидая скрипт.
Add-PSSnapin VMware*
Connect-VIServer 1.1.1.1
$vAppName = Read-Host "Enter the name of vApp (you may use regular expression)"
$vApps = Get-VApp $vAppName
if ($vApps -eq $null) { exit }
Write-Host "You really want to create snapshots in those vApps?"
Format-List -InputObject $vApps -Property Name
do { $Answer = Read-Host "[y/n]" }
until (($Answer -ieq "y") -or ($Answer -ieq "n"))
if ($Answer -ieq "n") { exit }
$SnapshotName = Read-Host "Enter the name of snapshots"
foreach ($vApp in $vApps) {
Write-Host " "
Write-Host "------------------------------"
Write-Host "Creating snapshots in '$vApp'..."
Write-Host "------------------------------"
$VMs = get-vm * -Location $vApp
foreach ($VM in $VMs) { New-Snapshot -VM $VM -Name $SnapshotName }
}
Если так сделать нельзя, то как запускать процедуру заново не покидая скрипт.