我翻了翻dp盘符整理,写过一段获取信息的。
[ol]rem 使用mountvol获取卷名称
rem mountvol_bug:未修正。使用/s挂载的EFI分区对应的卷名称下面不会显示盘符,通过/l有可能会查出该卷名称,通过diskpart等其它方式仍然可以再次为这个EFI分区分配盘符,这就造成了一个EFI分区可能有两个盘符的情况,前者挂载的属于非diskpart盘符。
set /a mvn=0
for /f "skip=22 tokens=1,3" %%a in ('mountvol') do (
set "mvstr=%%a"
if "!mvstr:~0,2!"=="!mvstr:~-1!" (
set "volumename_tmp=%%a"
set "volumename_tmp=!volumename_tmp:~0,-1!"
)
if "!mvstr:~-2!"==":" (
set "volumename_!mvstr:~0,1!=!volumename_tmp!"
) else if "!mvstr:~0,3!"=="***" (
set /a mvn+=1
set "volumename_null_!mvn!=!volumename_tmp!"
)
rem 获取通过mountvol挂载的EFI分区盘符
if /i "%%a"=="EFI" if exist "%%b" (
set "mountvol_efi=%%~db"
set "mountvol_efi=!mountvol_efi:~0,1!"
)
)[/ol]复制代码