Windows

Как запаковать каждый файл в отдельный архив 7-zip/WinRAR

Как запаковать каждый файл в отдельный архив 7-zip/WinRAR

Есть большое количество файлов, каждый из которых нужно положить в отдельный архив. Напишем скрипт, который возьмет каждый файл из входной папки, заархивирует его с помощью архиваторов 7-zip или WinRAR и положит в выходной каталог.

Для этого создаем файл archive.bat со следующим содержимым:

для 7-zip:

set _in=с:in
set _out=с:out
set _arcpath=c:Program Files7-zip
for %%i in (%_in%*.*) do "%_arcpath%7z" a "%_out%%%~ni.7z" "%%i"

для WinRAR:

set _in=с:in
set _out=с:out
set _arcpath=c:Program FilesWinRar
for %%i in (%_in%*.*) do "%_arcpath%rar" a -ep1 -t -m0 "%_out%%%~ni.rar" "%%i"

Где

  • _in — входной каталог.
  • _out — каталог, где будут размещаться созданные архивы.
  • _arcpath — путь до архиватора.

В данном скрипте обрабатываются все файлы из входного каталога. При необходимости, вместо маски *.* можно указать любую маску файла. Например, для текстовых файлов нужно прописать маску *.msi или *.exe. В результате выполнения скрипта в выходном каталоге появятся архивы, в каждом их которых будет по одному файлу из входного каталога.

Насколько полезным был этот пост?

Нажмите на звезду, чтобы оценить!

Средний рейтинг 5 / 5. Голосов: 1

Пока оценок нет! Будьте первым, поставь свою оценку этому посту.

Мы сожалеем, что этот пост не был полезен для вас!

Давайте улучшим этот пост!

Расскажите, как мы можем улучшить этот пост?

Теги

4
Оставить комментарий

avatar
2 Цепочка комментария
2 Ответы по цепочке
0 Последователи
 
Популярнейший комментарий
Цепочка актуального комментария
4 Авторы комментариев
ПанасDmitrychalexnettmСергей Авторы недавних комментариев

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.

  Подписаться  
новее старее большинство голосов
Уведомление о
Панас
Гость
Панас

Total commander или Winrar это умеют делать по умолчанию

Сергей
Гость
Сергей

добрый день. долго искал этот скрипт для WinRAR, нашёл :)
проставил все пути,
но окно запуска мелькает за полсекунды, не подскажете, где хотя бы лог посмотреть? я что-то делаю не так…

Dmitrych
Гость
Dmitrych

Ты все так делаешь, просто там ошибок полно.
строки должны выглядеть так:
for %%i in (%_in%\*.*) do «%_arcpath%\7z.exe» a «%_out%\%%~ni.7z» «%%i»
и
for %%i in (%_in%\*.*) do «%_arcpath%\rar.exe» a -ep1 -t -m0 «%_out%\%%~ni.rar» «%%i»

Back to top button
Close
Close