1

У меня есть большой каталог zip файлов, каждый из которых содержит один файл. Я хотел бы автоматически распаковать все zip-файлы в один каталог.

7-Zip имеет функцию для извлечения нескольких Zip-файлов в один каталог. Тем не менее, он создает подкаталог для каждого оригинального почтового индекса. Вот как выглядит до и после:

До:

- before
  - a.zip
    - a.txt
  - b.zip
    - b.txt
  - c.zip
    - c.txt
  - d.zip
    - d.txt

После:

- after
  - a
    - a.txt
  - b
    - b.txt
  - c
    - c.txt
  - d
    - d.txt

Тем не менее, мой желаемый результат:

- after
  - a.txt
  - b.txt
  - c.txt
  - d.txt

Как я могу это сделать?

3 ответа3

1

Если вы выберете все zip-файлы в Проводнике и нажмете правой кнопкой мыши, вы найдете опцию Extract Here в меню 7-Zip . Это должно делать то, что вы хотите.

0

Вы можете сделать это в командной строке с помощью переключателя "е".

7za e archive.zip -o\\path\to\target

Ключ -o является необязательным и позволяет указать целевой каталог для распаковки. Не ставьте пробел между -o и путем. Если вы не укажете его, будет использован текущий каталог.

Только будьте осторожны, чтобы в вашем архиве не было файлов с одинаковыми именами в разных папках.

0

Вы можете попробовать использовать пакетный файл для этой задачи. Что-то вроде:

::Path where zip files are stored
SET SOURCEPATH=C:\zips\before

::Target Path where extracted files will be stored
SET TARGETPATH=C:\zips\after

::path to 7-zip
SET Z=C:\Program Files\7-Zip\7z.exe

::Extract each file in source folder into target
FOR %%f in (%SOURCEPATH%\*.zip) do "%Z%" e %%f -o%TARGETPATH%

Этот пакетный файл разархивирует все файлы в папке "До" с расширением "zip" в папку "После". Вы должны изменить исходный, целевой и 7zip-пути.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .