Descompactando o arquivo .tar.gz para o diretório específico [duplicado]

3

Como o arquivo tar.gz é descompactado com todo o conteúdo para um diretório arbitrário, existente ou não usando tar usando o comando de linha única? Se não existe, então é criado (diretório). Para esclarecer, vamos considerar o exemplo: Eu baixei archive-latest.tar.gz da internet no diretório /home/user/Downloads . Eu tenho a partição de destino do cartão microSD montada em /mnt/archive . Após o download, quero extrair o /home/user/Downloads/archive-latest.tar.gz do download diretamente no /mnt/archive usando o comando de linha única. Eu li man tar manual, mas não consigo encontrar a opção para especificar o diretório de destino.

    
por KernelPanic 08.03.2015 / 08:13

1 resposta

6

A opção -C faz o tar mudar para um diretório existente antes de começar a extrair:

 tar xv -C /mnt/archive -f /home/user/Downloads/archive-latest.tar.gz

Se você já estiver localizado no diretório /home/user ou /home/user/Downloads , poderá encurtar o caminho depois de -f de acordo.

Se houver uma chance de o caminho de destino não existir, você poderá criá-lo com mkdir :

 mkdir -p /mnt/archive;  tar xv -C /mnt/archive -f /home/user/Downloads/archive-latest.tar.gz

Com a -p opção mkdir não reclama caso o diretório já exista.

    
por 08.03.2015 / 08:55

Tags