Форум программистов, компьютерный форум, киберфорум
Наши страницы
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
nylonlady
0 / 0 / 0
Регистрация: 07.09.2015
Сообщений: 4
1

Архивация вложенных папок

07.09.2015, 21:09. Просмотров 1464. Ответов 6
Метки нет (Все метки)

Уважаемые знатоки, помогите решить проблему. Есть файлы, которые требуется заархивировать WinRar, при помощи bat'ника хотелось бы автоматизировать процесс.
Структура расположения файлов следующая: есть папка, назовем ее условно Folder A, которая содержит порядка 100-150 вложенных папок. В этих папках в свою очередь лежит по несколько других папок (количество варьируется от 2 до 8, но это не суть как важно), содержащих сами файлы. Хотелось бы, чтобы при архивации пожались только конечные папки с файлами и остались лежать на своем месте.
Проблема в том, что если запускать батник из Folder A, то архиватор пакует эти 100-150 папок со всем их содержимым, а мне нужно, чтобы он работал только с теми, в которых лежат непосредственно файлы. Пихать батник в каждую из сотен папок и запускать его - руки отвалятся. Можно как-то его подправить, чтобы один раз его выполнить из Folder A и пойти пить чай, пока rar будет жать файлы.
В батнике у меня следующее прописано:
Windows Batch file
1
FOR /d %%d IN (*.*) DO ( "C:\Tools\WinRAR\winrar.exe" m -r -ep1 -m0 -ibck "%%d.zip" "%%d" )
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.09.2015, 21:09
Ответы с готовыми решениями:

Получить список папок и вложенных папок, отсортированных по размеру
Как можно получить список папок и вложенных папок, отсортированных по размеру

Архивация папок
Прошу помощи в написании , казалось бы не сложного скриптика, но... Задача выполняемая скриптом...

Архивация выбранных папок+файлов в текущей директории
добрый день, понадобилось собирать zip-архив с нужными папками в текущей директории с помощью...

Создание вложенных папок
Необходимо создать папку-в-папке со вложенностью 50. Хотел автоматизировать этот процесс через ...

Создание вложенных папок друг в друга
Здравствуйте ! Помогите создать (улучшить батник) для копирования . Смысл заключается в том что...

6
alpap
2137 / 1443 / 483
Регистрация: 26.04.2015
Сообщений: 4,912
07.09.2015, 23:59 2
nylonlady, поиск есть, как минимум и вот сюда загляните, долго обсуждали, много вариантов. А почему тянет на Winrar? Вот чем интересно 7z не устраивает, какие аргументы?
0
nylonlady
0 / 0 / 0
Регистрация: 07.09.2015
Сообщений: 4
08.09.2015, 14:22  [ТС] 3
Да так-то мне до фонаря, будет ли это WinRar или 7z, просто я с раром привыкла работать. Насколько я понимаю, между ними разница невелика, сжатие у меня все равно нулевое, по скорости если 7z и выигрывает, то это тоже непринципиально, потому что я поставлю архивироваться и пойду спать - пускай жмет до талого.
Ссылку вашу посмотрю, хотя поиском пользовалась, что-то не нашла, может, пропустила...
0
sov44
1761 / 745 / 128
Регистрация: 09.04.2011
Сообщений: 1,318
08.09.2015, 14:48 4
nylonlady, попробуйте так
Windows Batch file
1
2
3
4
5
6
7
8
9
10
@echo off
setlocal EnableDelayedExpansion
 
set in="c:\test"
 
for /f "delims=" %%a in ('dir /b /s /ad "%in%\*"') do (
"c:\Program Files\WinRAR\rar.exe" M -ep1 -ed "%%a\%%~na.rar" "%%a\*"
)
pause
exit
0
nylonlady
0 / 0 / 0
Регистрация: 07.09.2015
Сообщений: 4
08.09.2015, 17:07  [ТС] 5
Спасибо огромное, sov44, работает. Только можно здесь как-то подправить, чтобы он последнюю папку в иерархии (где сами файлы лежат), не оставлял, т.е. грохал ее?
0
alpap
2137 / 1443 / 483
Регистрация: 26.04.2015
Сообщений: 4,912
08.09.2015, 22:24 6
Цитата Сообщение от nylonlady Посмотреть сообщение
(количество варьируется от 2 до 8, но это не суть как важно), содержащих сами файлы.
- при вашем вопросе уже важно и не понятно
Цитата Сообщение от nylonlady Посмотреть сообщение
последнюю папку в иерархии (где сами файлы лежат), не оставлял, т.е. грохал ее?
- ну т.е. что все-таки нужно?
Windows Batch file
del "%%a\*"
или
Windows Batch file
rd "%in%"
?
0
nylonlady
0 / 0 / 0
Регистрация: 07.09.2015
Сообщений: 4
09.09.2015, 13:47  [ТС] 7
Думается мне, нужно
Windows Batch file
del "%%a\*"
.
0
09.09.2015, 13:47
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.09.2015, 13:47

Транслитерация кириллических имён вложенных папок
Доброго времени суток коллеги. Столкнулся с такой проблемой, есть папка для внутреннего...

txt файл с именами папок внутри самих папок (в кодировке 1251)
Добрый вечер ) Есть несколько сотен папок, в каждой из которых нужно создать файл album.txt в...

Архивация вложенных папок посредством TAR в отдельные архивы
Доброго времени суток. Задаю вопрос и прошу сильно не пинать если уже что-то аналогичное было,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru