descompacte vários arquivos

14

Não acho que sou o único com esse problema, mas infelizmente não consegui encontrar a resposta correta entre as perguntas anteriores.

É um procedimento muito comum em sites de torrent em que o conteúdo é dividido em muitos arquivos pequenos. Às vezes, esses pequenos arquivos zip indexados contêm outros arquivos rar dentro.

Então, minha pergunta é: como você lida com esse problema? Como você descompacta recursivamente esses arquivos?

rda
fonte
2
Você poderia dar um exemplo?
ztik
Você está procurando uma solução manual ou completamente automatizada?
David Foerster
apenas uma observação, normalmente quando você encontra esse tipo de torrent sobre software / filmes ilegais e nunca chega ao fim desses arquivos .rar / .zip porque é falso.
Jeggy

Respostas:

20

Para fazer isso, basta pressionar Ctrl+ Alt+ Tno teclado para abrir o Terminal. Quando abrir, execute o (s) comando (s) abaixo:

unzip '*.zip'

Além disso, você pode clicar com o botão direito do mouse no primeiro arquivo do grupo e escolher Extrair aqui, e isso também incluirá todos os arquivos desse grupo.

Mitch
fonte
De acordo com o manual, unzip não há suporte a arquivos divididos (consulte o primeiro parágrafo na seção "Bugs").
David Foerster
O @DavidFoerster acabou de testá-lo e funciona.
Mitch
Ok, então o manual parece estar errado. Boa pegada.
David Foerster
@mitch no meu caso, ele não funciona, diz "erro ao carregar o arquivo zip", mas no Windows o mesmo diretório no mesmo disco descompacta com o winrar, talvez você tenha tentado descompactar vários mas> separar <arquivo zip simultaneamente? isso é outra coisa embora.
Papajo 11/10
2

Para descompactar vários arquivos usando um loop -

for z in *.zip; do unzip "$z"; done
Rohith Madhavan
fonte
@DavidFoerster Os dois métodos são essencialmente os mesmos. *.zipfornece todos os arquivos possíveis, terminando com uma extensão zip, que o loop descompacta um por um. É também por isso que o @Mitch incluiu aspas simples em sua resposta '*.zip', para que o shell não o reconheça como um caractere curinga.
Rohith Madhavan
1
Este é realmente um método melhor, pois você pode especificar uma lista de nomes de arquivos em vez de dizer "todos os arquivos no diretório". No IE, você deseja extrair uma lista específica de arquivos zip, um após o outro, em ordem, você pode fazer "para z em XYZTG; descompactar -o" $ z.zip "; done" e faria nessa ordem. Esta é a melhor resposta imho.
John Hamilton
0

CTRL+ ALT+ TA abrir um terminal

for f in $(ls | egrep zip); do
  unzip $f -vd UnzippedDirectory
done

Isso basicamente percorre todos os zips que você obteve no diretório atual e descompacta cada um deles em detalhes (daí a -vflag) em um diretório ( -dflag)

Daniel Andrei Mincă
fonte