Я полагаю, что при нажатии (запуске) bat-файла из проводника в текущем каталоге указывается местоположение командного файла.
Таким образом, если ваш пакетный файл хранится и запускается из каталога на USB-накопителе, то вы уже находитесь в каталоге с такой буквой диска. Вам не нужно переключать диски, поэтому вам не нужно указывать это.
Так что просто используйте CD \
, чтобы убедиться, что вы находитесь на корневом уровне диска, на котором находитесь.
Вам также не нужно использовать букву диска для доступа к другим каталогам на том же диске. Если вы находитесь в папке c:\temp
:
123\file.txt
эквивалентно c:\temp\123\file.txt
(без косой черты, поэтому путь добавляется к текущему пути)
\123\file.txt
эквивалентно c:\123\file.txt
( начальная косая черта, поэтому путь добавляется только к букве диска (называется "корень")
Это может стать немного сложнее, если вы запускаете другие пакетные файлы из пакетного файла, которым также необходимо знать, в каком каталоге они находятся. Я не думаю, что вы находитесь в этой ситуации на основе вашего примера.
см. также ( https://stackoverflow.com/questions/16255184/ ) для более подробного обсуждения того, как найти текущий рабочий каталог.