Windows

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

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

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

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

для 7-zip:

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

для WinRAR:

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

Где

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

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

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

2 комментария

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