CODE: [Copy to clipboard]
@echo off
for /f "skip=2 tokens=1* delims=," %%a in ('WMIC Path Win32_DiskPartition Where "BootPartition=true" Get DeviceID /Format:csv') do set BootPartition=%%b
for /f "tokens=1 delims=[]" %%a in ('WMIC Path Win32_LogicalDiskToPartition Get Antecedent^,Dependent /Format:list ^| find /n "=" ^| find /i "%BootPartition%"') do set LineNum=%%a
set /a LineNum+=1
for /f "tokens=3 delims==" %%a in ('WMIC Path Win32_LogicalDiskToPartition Get Antecedent^,Dependent /Format:list ^| find /n "=" ^| findstr /b /l /c:"[%LineNum%]"') do set BootDrive=%%~a
for /f "tokens=1,2 delims=," %%a in ("%BootPartition%") do (set BootDisk=%%a)&(set BootPartition=%%b)
set BootPartition=%BootPartition:~1%
set BootDrive=%BootDrive:"=%
set Boot
pause