위의 ".ps1"(Windows PowerShell 스크립트) 예제를 기반으로 VirtualBox의 가상 컴퓨터가 시작되는 시간을 변경하기 위해 일반 ".bat"스크립트 파일을 작성했습니다.
원하는 시작 시간은 에포크 형식의 변수 "TEMPO_START_TIMESTAMP"에 설정되어 있습니다. " http://www.timestampconvert.com/ " 에서 원하는 시작 시간을 얻을 수 있습니다 .
시작될 VirtualBox 가상 머신의 이름은 변수 "NOME"(위의 ".ps1"스크립트에서 사용 된 것과 동일한 명명법)에 필요합니다.
echo off
echo %time%
set NOME="Windows_7_x64"
set TEMPO_CS_2_MS=0
set TEMPO_S_2_MS=000
rem # Starts the VM always on the date 07/11/2014 - 11h58
rem http://www.timestampconvert.com/
set TEMPO_START_TIMESTAMP=1415361480
for /f "delims=" %%x in ('cscript /nologo toEpoch.vbs') do set epoch=%%x
rem %epoch%
set TEMPO_CURRENT_TIMESTAMP=%epoch%
rem set TEMPO_CURRENT_TIMESTAMP=1544518714
set /A TEMPO_TEMP=(%TEMPO_START_TIMESTAMP%-%TEMPO_CURRENT_TIMESTAMP%)
call set TEMPO=%TEMPO_TEMP%%TEMPO_S_2_MS%
rem %TEMPO_TEMP%
rem %TEMPO%
c:\Progra~1\Oracle\VirtualBox\VBoxManage setextradata %NOME% "VBoxInternal/Devices/VMMDev/0/Config/GetHostTimeDisabled" 1
c:\Progra~1\Oracle\VirtualBox\VBoxManage modifyvm %NOME% --biossystemtimeoffset %TEMPO%
c:\Progra~1\Oracle\VirtualBox\VBoxManage startvm %NOME%
현재 시간을 epoh 형식으로 사용해야합니다. 이렇게하려면 다음 스크립트를 사용하십시오 ( "toEpoch.vbs"로 저장,이 시각적 기본 스크립트는 위의 ".bat"스크립트에서 호출 됨).
WScript.Echo DateDiff("s", "01/01/1970 00:00:00", Now())
가상 머신을 실행하려면 위의 ".bat"스크립트 파일을 실행하십시오. "Oracle VM VirtualBox 관리"인터페이스를 열 필요가 없습니다.
이게 도움이 되길 바란다.
문안 인사