Root-Drive-Agnostic копия - PullRequest
       4

Root-Drive-Agnostic копия

0 голосов
/ 01 сентября 2011

Я хочу написать файл bat в Windows, который будет копировать некоторые файлы в текущий каталог:

copy C:\Folder1\Folder2\file1.ext .\
copy C:\Folder3\Folder4\Folder5\file2.ext2 .\
...

Я хотел бы иметь следующее поведение: Если bat запускается из пути скорневой диск X, я хочу, чтобы он копировал те же файлы (с теми же путями) из X

copy X:\Folder1\Folder2\file1.ext .\
copy X:\Folder3\Folder4\Folder5\file2.ext2 .\
...

Как этого добиться?т.е. как я могу получить имя корневого диска из текущего каталога?Надеюсь, мой вопрос был ясен.

Ответы [ 2 ]

3 голосов
/ 01 сентября 2011

Разве вы не можете просто пропустить букву диска? AFAIK это необязательно, \Folder\Foo должен быть действительным абсолютным путем на текущем диске.

1 голос
/ 01 сентября 2011

Правило пакетного языка состоит в том, что когда вы не знаете, как что-то сделать, это, вероятно, включает for.

for /F %%I in ("%CD%") do set CURRENT_DRIVE=%%~dI
...