Windows下命令行启动安卓虚拟机
新建txt文件并修改后缀名为bat,并把该文件放到emulator.exe同一个目录,文件内容为以下内容,双击启动即可使用
@echo off
setlocal enabledelayedexpansion
set i=0
for /f "tokens=* delims=" %%a in ('.\emulator.exe -list-avds') do (
set /a i+=1
set avd[!i!]=%%a
)
echo AVD List:
for /l %%i in (1,1,%i%) do (
echo %%i. !avd[%%i]!
)
if %i%==0 (
echo AVD is empty.
) else (
echo AVD count: %i%
goto selsct
)
:selsct
set /p j=Select an AVD(Enter the No.):
if %j% LEQ %i% (
echo start AVD: !avd[%j%]!
pause
set /a j-=1
::start "" ".\emulator.exe" -avd !avd[%j%]!
.\emulator.exe -avd !avd[%j%]!
) else (
echo wrong AVD index
goto selsct
)
脚本解释:
1.@echo off-关闭命令回显,使用"setlocal enabledelayedexpansion"开启延迟环境变量扩展。
2.设置一个计数器"i",用于计算虚拟机的数量。
3.使用"for /f"命令遍历所有安卓虚拟机,并将它们存储到一个数组"avd"中。在循环体中,使用"set /a i+=1"将计数器"i"加1,用于记录虚拟机数量。由于需要在循环内部使用"avd"数组,因此需要开启延迟环境变量扩展。
4.输出虚拟机列表,使用"for /f"命令遍历数组"avd",并输出每个虚拟机的名称及编号。
5.如果虚拟机列表为空,输出"AVD is empty.",否则输出虚拟机的数量,并跳转到"selsct"标签,让用户选择一个虚拟机。
6.在"selsct"标签中,使用"set /p"命令提示用户输入要启动的虚拟机编号"j"。
7.如果输入的编号"j"小于等于虚拟机数量"i",则输出要启动的虚拟机名称,并启动该虚拟机。否则输出"wrong AVD index",并跳转回"selsct"标签。