Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Пользователь


Сообщения: 77
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата Iska:
и что при этом происходит с последующими командами, если не использовать всякие ping/timeout. »
отличный вопрос! затестировал
происходит просто пауза, пока не закончится операция с предыдущей, таким образом тайм ауты и пинги не нужны
более того, VBoxManage.exe сам может создавать папку если её нет, таким образом
cmdшная команда тоже тут не нужна.
Код: Выделить весь код
cd /d "D:\vmbackup"
if not exist "name_%date%" md "name_%date%"
в итоге, скрипт на остановку-копию-запуск будет таким:
Код: Выделить весь код
"C:\Program Files\Oracle VirtualBox\vboxmanage.exe" controlvm "имя_виртуалки" savestate
"C:\Program Files\Oracle VirtualBox\vboxmanage.exe" clonemedium "путь_к_виртдиску\имя_виртдиска.vdi" "путь_к_копии_виртдиска\%date%\имя_виртдиска.vdi"
"C:\Program Files\Oracle VirtualBox\vboxmanage.exe" startvm "имя_виртуалки" --type headless
//повторить для других виртуальных машин
проверка скриптом количества папок в папке "D:\vmbackup" например, и, если больше 7ми, удалять самые старые по дате
запись всех итогов(достаточно просто копии всех надписей что в окне cmd прошло) в лог в этой же %date% папке в txt
выделил удаление папок, т.к. скрипт от товарища alpap
не сработал

он же, из этой же папки запущенный

так же, уважаемый товарищ alpap, это, я так понимаю, запись в лог?
Код: Выделить весь код
for /f "delims=" %%a in ('"VBoxManage clonemedium "исходный_путь_виртдиска\диск1.vdi" "D:\vmbackup\папка_с_датой\диск1.vdi""') do echo "%%a">>"log.txt"

Отправлено: 14:32, 16-02-2017 | #7