Ссылка на том / диск по метке - PullRequest
4 голосов
/ 30 января 2012

Я пытаюсь записать пакетный файл, чтобы скопировать папку на съемный USB-накопитель.Однако проблема, с которой я сталкиваюсь, заключается в том, что буквы дисков могут изменяться, поэтому я хотел бы сделать это, ссылаясь на метку тома вместо буквы диска.

Есть идеи?Час поиска Google оказался бесплодным.(

Ответы [ 3 ]

11 голосов
/ 30 января 2012

Эта команда должна обнаружить диск с правильной меткой и сохранить букву диска (с двоеточием) в переменной «usb»

for /f %%D in ('wmic volume get DriveLetter^, Label ^| find "yourLabel"') do set usb=%%D

Вы можете встраивать свои команды xcopy непосредственно в предложение DO, если хотите. %% D содержит букву диска.

1 голос
/ 07 апреля 2016

Это работает в Windows XP:

for /f %%D in ('wmic LogicalDisk get Caption^, VolumeName ^| find "DRIVE_LABEL"') do set DRIVE=%%D

(используйте %D вместо %%D, если запускается непосредственно из командной строки.)

1 голос
/ 04 апреля 2013

Для своих нужд я использую следующее в пакетном файле, который ищет диск с надписью «Система» (это место, где установлена ​​моя ОС Windows 7), и он помещает букву диска, связанную с меткой «Система», впеременная с именем %SystemVolume_DriveLetter%

for /f "delims=" %%l in ('WMIC Path Win32_volume where "Label='System'" Get DriveLetter /format:list') do >nul 2>&1 set "SystemVolume_%%l"
...