Вот пакетный файл, который я написал, чтобы изменить букву тома на K. Любая помощь в улучшении кода будет принята с благодарностью.
PS. В начале есть часть кода для запуска с использованием прав администратора. Я намеренно опустил это.
:mainBody set "volume=\Volume" set "drive=" for %%D in (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z) do ( mountvol %%D: /L | findstr "%volume%" >nul if not errorlevel 1 ( if %%D==K ( echo DONE! goto end ) else ( set "drive=%%D" goto clearK ) ) ) :clearK mountvol K: /L >nul if errorlevel 1 ( echo K: is free... ) else ( echo K: is taken... for /f "tokens=1 delims=" %%A in ('mountvol K: \L') do SET currdriveguid=%%A for %%D in ( Z Y X W V U T S R Q P O N M L K J H G F E D B A ) do ( mountvol %%D: /L >nul if errorlevel 1 ( mountvol K: /d mountvol %%D:\ currdriveguid echo Current Volume moved to %%D:... goto assignK ) ) ) : assignK if not defined drive ( mountvol K:\ \\?%volume%\ ) else ( mountvol %drive%: /D mountvol K:\ \\?%volume%\ ) :end