Extrai o conteúdo de múltiplos diretórios via 7zip (sem criar subpastas)

1

Eu tenho um grande diretório de zip arquivos, cada um contendo um único arquivo. Eu gostaria de extrair todos os arquivos zip automaticamente, em um diretório.

O 7-zip tem um recurso para extrair vários zips no mesmo diretório. No entanto, ele cria um subdiretório para cada zip original. Aqui está o que o antes e o depois parecem:

Antes:

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

Depois:

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

No entanto, minha saída desejada é esta:

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

Como posso fazer isso?

    
por Julian Lachniet 27.03.2017 / 23:38

3 respostas

1

Se você selecionar todos os arquivos zip no Explorer e clicar com o botão direito do mouse, deverá encontrar uma opção Extract Here no menu 7-Zip . Isso deve fazer o que você quiser.

    
por 27.03.2017 / 23:42
0

Você pode tentar usar um arquivo em lotes para essa tarefa. Algo como:

::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-Zipz.exe

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

Este arquivo em lote irá descompactar todos os arquivos na pasta "Antes" com a extensão "zip" na pasta "Depois". Você deve modificar os caminhos de origem, destino e 7zip.

    
por 28.03.2017 / 00:45
0

Você pode fazer isso na linha de comando com o comutador "e".

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

O comutador -o é opcional e permite especificar um diretório de destino para descompactar. Não coloque um espaço entre o -o e o caminho. Se você não especificá-lo, o diretório atual será usado.

Apenas tome cuidado para que seu arquivo não tenha arquivos com o mesmo nome em pastas diferentes.

    
por 28.03.2017 / 03:11