Que comando eu preciso para descompactar / extrair um .alcatrao.ficheiro gz?

Eu recebi um enorme .alcatrao.arquivo gz de um cliente que contém cerca de 800 mb de arquivos de imagem (quando descompactado.) O ftp da nossa empresa de hospedagem é seriamente lento, portanto, extrair todos os arquivos localmente e enviá-los via ftp não é prático. Eu era capaz de ftp o.alcatrao.arquivo GZ Para o nosso site de hospedagem, mas quando eu ssh no meu diretório e tento usar descompactar, isso me dá esse erro:

[esthers@clients locations]$ unzip community_images.tar.gzArchive:  community_images.tar.gz  End-of-central-directory signature not found.  Either this file is not a zipfile, or it constitutes one disk of a multi-part archive.  In the latter case the central directory and zipfile comment will be found on the last disk(s) of this archive.note:  community_images.tar.gz may be a plain executable, not an archiveunzip:  cannot find zipfile directory in one of community_images.tar.gz or community_images.tar.gz.zip, and cannot find community_images.tar.gz.ZIP, period.

Que comando eu preciso usar para extrair todos os arquivos em um.alcatrao.ficheiro gz?

Tipo man tar para mais informações, mas este comando deve fazer o truque:

tar -xvzf community_images.tar.gz

Para explicar um pouco mais, tar coletou todos os arquivos em um pacote, community_images.tar. O programa gzip aplicou compressão, daí o gz extensao. Então o comando faz algumas coisas:

  • f: esta deve ser a última bandeira do comando, e o alcatrão file deve ser imediatamente depois. Ele informa ao tar o nome e o caminho do arquivo compactado.
  • z: diz ao tar para descompactar o arquivo usando gdePI
  • x: tar pode coletar arquivos ou extratem-nos. x faz o último.
  • v: faz tar falar muito. Va saída erbose mostra todos os arquivos que estão sendo extraídos.

Para extrair em um cpasta ustom, adicione o -C opção com um nome de pasta de sua escolha:

tar -xvzf community_images.tar.gz -C some_custom_folder_name

Se você deseja que os arquivos sejam extraídos para um destino específico, você pode adicionar -C /destination/path/
Certifique-se de fazer o diretório primeiro, neste caso: ~ / Pictures / Community

Exemplo:

mkdir ~/Pictures/Communitytar xf community_images.tar.gz -C /home/emmys/Pictures/Community/

Você pode memorizá-lo facilmente se considerar contar alcatrao para e X tracto a F e

gif of process done at terminal

Notar: Lembre-se de que você pode pesquisar dentro de páginas de manual com ?+ termo para procurar e depois n e N para ir para a instância seguinte ou anterior do termo que você está procurando.

Em algum momento tar foi atualizado para descompactar automaticamente. Tudo que você precisa agora é:

tar xf community_images.tar.gz

A mesma explicação se aplica:

  • f: esta deve ser a última bandeira do comando, e o alcatrão file deve ser imediatamente depois. Ele informa ao tar o nome e o caminho do arquivo compactado.
  • x: oxtrato os arquivos.

Observe a falta de hífen para os sinalizadores de comando. Isso ocorre porque a maioria das versões do tar permite opções de estilo gnu e bsd(simplisticamente, o gnu requer um hífen, o BSD não).

Lembrando todas as bandeiras para tar pode ser tedioso. Xkcd obrigatório:

enter image description here

Portanto, fiz meu próprio script em Python para fazer isso. Rápido, Sujo, cp- como no uso:

#!/usr/bin/env python3import tarfile,sys,ostf = tarfile.open(name=sys.argv[1],mode='r:gz')where = '.'if len(sys.argv) == 3:    where = sys.argv[2]tf.extractall(path=where)tf.close()

Usá-lo como assim:

myuntar.py archive.tar

Ver também similar script para descompactar arquivos zip.

Resposta Rápida:

tar -xvf  <.tar file> or <.tar.xz file>tar -xzvf <.tar.gz file>tar -xjvf <.tar.bz2 file>

[NOTAR]:

  • -v Liste verbosamente os arquivos processados.
  • -z Filtre o arquivo através do gzip.
  • -f Use arquivo de arquivo ou arquivo de dispositivo.
  • -x Extraia arquivos de um arquivo.
  • -j bzip2.
  • alcatrao -xf arquivo.Tar # extraia todos os arquivos de archive.tar.

Caso você não consiga extrair .tar.gz arquivo usando

tar -xvzf fileName.tar.gz

Tente extrair usando

tar xf fileName.tar.gz

Você também pode fazer isso no primeiro passo:

gunzip community_images.alcatrao.gz

Então você tem o arquivo: community_images.alcatrao

O segundo passo seria:

tar-xvf community_images.alcatrao

E o *.o arquivo tar seria extraído.

arquivo tar xvf.alcatrao.gz

  • X para extrato
  • v para verbose (arquivos de lista)
  • f para o nome do arquivo é o próximo

Qualquer versão remotamente moderna do tar deve detectar automaticamente se o arquivo está compactado e adicionar " z " para você.