newhk
BANNED | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Приветствую! Хочу автоматизировать процесс экспорта нужной виртуалки до максимума. Для этого начал писать скрипт, но, видно, что-то сделал не так: Код: $vmlist = Get-VM | where state -eq 'running' $date = (get-date).ToString('yyyyMMdd-HHmm') $a = $vmlist.name $b = ($a).Count for ($i = 1; $i -le $b; $i++){ foreach ($vml in $b){ Set-Variable -Name $vml -Value $i } } function exportvm { $vmpath = 'H:\VMs\' + $(значение выбранной переменной) $oldpath = $vmpath + '\' + $(значение выбранной переменной) $newpath = $oldpath + '_' + $date if (Test-Path -Path $vmpath){ Rename-Item $oldpath -NewName $newpath -Force Export-VM 'значение выбранной переменной' -Path $vmpath } } Clear Write-Host Write-Host " Вас приветствует мастер экспорта виртуальных машин" -ForegroundColor Magenta Write-Host " выберите нужную виртуальную машину из списка ниже" -ForegroundColor Magenta Write-Host Write-Host "1. VM1" Write-Host "2. VM2" Write-Host "3. VM3" Write-Host "4. VM4" Write-Host "5. VM5" $choice = Read-Host "Надо выбрать виртуалку" Не уверен, что нужно то что ниже $d = switch($choice){ 1{VM1} 2{VM2} 3{VM3} 4{VM4} 5{VM5} } exportvm | Что-то у меня не выходит в присваивании переменных похоже, хотя есть вероятность, что здесь чего-то не хватает... Идея в том, чтобы выведенный список виртуалок стал списком меню с соответствующим значением, который бы соответствовал цифре или любому другому значению. Set-Variable -Name $vml -Value $i Только перебором для каждой Главная проблема для меня - получить список виртуалок и присвоить каждой значение переменной, которое будет использоваться дальше Помогите плиз понять, что я делаю не так (не говорите что все )) ) | Всего записей: 400 | Зарегистр. 02-02-2009 | Отправлено: 14:30 30-01-2020 | Исправлено: newhk, 14:30 30-01-2020 |
|