2012-03-01 3 views
0

У меня есть тысячи пар файлов, которые мне нужны для архивирования. В настоящее время каждая пара файлов (* .mp3 & * .cdg) имеет одно и то же имя (кроме расширения). Каждая из пар файлов находится в подкаталогах внутри основного каталога. Я хочу оставить каждый архив в том же подкаталоге, что и пара файлов. В настоящее время я использую следующую команду cmd, но она создает архивы в основном каталоге, а затем «не может найти» либо * .mp3, либо * .cdg.Пакетная задержка в подкаталогах

FOR /r %F IN (*.mp3) DO "C:\Program Files\7-Zip\7Z.exe" a "%~nF.zip" "%~nF.mp3" "%~nF.cdg" 

Что мне нужно изменить, чтобы оставить каждый архив в подкаталоге исходного файла без создания пакетных файлов 140 + для каждого суба-каталога?

ответ

1

Вам необходимо включить Информацию о путях модификаторов: D = привод, р = путь, и для mp3 F = полный путь

FOR /r %F IN (*.mp3) DO "C:\Program Files\7-Zip\7Z.exe" a "%~dpnF.zip" "%~fF" "%~dpnF.cdg" 
+0

спасибо! Я все время бил головой о стену, глядя на параметры ... наверное, не лучше с головной болью. – QuasiAbstract