Extraindo subpastas para uma pasta específica

3

Eu tenho um monte de subpastas com os respectivos arquivos rar e 7z . Como faço para extrair tudo isso e dizer ao pipe para enviar para uma pasta específica?

    
por user412615 04.07.2015 / 20:25

1 resposta

0

Você pode usar isso para extrair todos os arquivos .rar e .7z recursivamente, ele salvará a saída em /directory/to/save :

find . -type f \( -name '*.rar' -o -name '*.7z' \) \
  -exec 7z e -o/directory/to/save {} \;

Execute isso no diretório pai que contém os subdiretórios que possuem os arquivos 7z e rar . Também substitua /directory/to/save pelo caminho real para o diretório em que você deseja salvar os arquivos descompactados.

7z vem com o pacote p7zip , você precisa instalá-lo (se ainda não estiver pronto), para obter o suporte ao arquivo rar você precisa p7zip-rar também:

sudo apt-get install p7zip-full p7zip-rar 

7z tem uma opção recursiva ( -r ), mas parece enganosa, pois man 7z diz:

-r[-|0]
            Recurse subdirectories (CAUTION: this flag does not do what 
you think, avoid using it)
    
por heemayl 04.07.2015 / 20:55