Извлечь на другой диск (с WinRar) из нескольких папок с командным файлом
455
mcnoob
Я хотел бы извлечь:
C: \ Материал \ Cat \ cat.rar
C: \ Материал \ Dog \ dog.rar
...
в
d: \ Stuff \ create dir Cat \ содержимое cat.rar
d: \ Stuff \ create dir Dog \ содержимое сайта dog.rar
...
После многих часов попыток (без предшествующего опыта) я остановился на этом:
FOR / D / r %% F in ("*") DO (
pushd %CD% cd %%F FOR %%X in (*.rar *.zip) DO ( for /f "delims=\" %%a in ("%cd%") do ( echo current folder: %%~nxa SET CURRENTFOLDER=%%~nxA "C:\Program Files (x86)\WinRAR\UnRAR.exe" x "%%X" D:\Stuff\%CURRENTFOLDER% ) ) popd )
Я просто не могу понять, как добавить переменную, содержащую имя текущей папки, к пути извлечения.
Любая помощь будет оценена, спасибо.
Попробуйте изменить путь извлечения в вашем примере на что-то вроде `" D: \ Stuff \% CURRENTFOLDER% \ "` и добавьте обратную косую черту в конец выходного каталога в вашей команде. Возможно, вам следует проверить с помощью команды `SET CURRENTFOLDER = %% ~ nA`, чтобы исключить расширение, если это тоже папка.
Pimp Juice IT 6 лет назад
0
0 ответов на вопрос
Похожие вопросы
-
2
.profile в Mac OS X?
-
6
Какие функции Zsh вы используете?
-
5
Прозрачная командная строка в Vista?
-
-
4
Используйте портфель Windows из командной строки
-
4
Почему некоторые команды не существуют?
-
11
Есть ли простой способ разделить mp3 файлы?
-
21
Сжатие с RAR против ZIP
-
2
Как я могу получить OSX Terminal.app для открытия полноэкранного режима, а не каскадного?
-
4
Синхронизация удаленных папок в Linux
-
6
Полноэкранная командная строка или замена Vista