De quelle commande ai-je besoin pour décompresser / extraire un.tar.fichier gz?

J'ai reçu un énorme .tar.fichier gz d'un client contenant environ 800 Mo de fichiers image (lorsqu'il n'est pas compressé.) Le ftp de notre société d'hébergement est très lent, donc extraire tous les fichiers localement et les envoyer via ftp n'est pas pratique. J'ai pu ftp le .tar.fichier gz sur notre site d'hébergement, mais lorsque je ssh dans mon répertoire et que j'essaie d'utiliser unzip, cela me donne cette erreur:

[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.

Quelle commande dois-je utiliser pour extraire tous les fichiers d'un .tar.fichier gz?

Type man tar pour plus d'informations, mais cette commande devrait faire l'affaire:

tar -xvzf community_images.tar.gz

Pour expliquer un peu plus loin, tar rassemblé tous les fichiers dans un seul paquet, community_images.tar. Le programme gzip a appliqué la compression, d'où le gz extension. Donc, la commande fait quelques choses:

  • f: ce doit être le dernier drapeau de la commande, et le tar fil doit être immédiatement après. Il indique à tar le nom et le chemin du fichier compressé.
  • z: indique à tar de décompresser l'archive en utilisant gdeIP
  • x: tar peut collecter des fichiers ou extractez-les. x ce dernier le fait.
  • v: fait beaucoup parler le goudron. Vla sortie erbose vous montre tous les fichiers en cours d'extraction.

Pour extraire dans un cdossier ustom, ajoutez le -C option avec un nom de dossier de votre choix:

tar -xvzf community_images.tar.gz -C some_custom_folder_name

Si vous souhaitez que les fichiers soient extraits vers une destination particulière, vous pouvez ajouter -C /destination/path/
Assurez-vous d'abord de créer le répertoire, dans ce cas: ~ / Pictures / Community

Exemple:

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

Vous pouvez facilement le mémoriser si vous envisagez de raconter tar à e X secteur a F et

gif of process done at terminal

Note: N'oubliez pas que vous pouvez rechercher dans les pages de manuel avec ?+ terme à rechercher, puis n et N pour passer à l'instance suivante ou précédente du terme que vous recherchez.

À un moment donné tar a été mis à niveau pour décompresser automatiquement. Tout ce dont vous avez besoin maintenant est:

tar xf community_images.tar.gz

La même explication s'applique:

  • f: ce doit être le dernier drapeau de la commande, et le tar fil doit être immédiatement après. Il indique à tar le nom et le chemin du fichier compressé.
  • x: lexouvrez les fichiers.

Notez l'absence de trait d'union pour les indicateurs de commande. C'est parce que la plupart des versions de tar autorisent à la fois les options de style gnu et bsd (de manière simpliste, gnu nécessite un trait d'union, bsd ne le fait pas).

Se souvenir de tous les drapeaux pour tar peut être fastidieux. XKCD obligatoire:

enter image description here

J'ai donc créé mon propre petit script en Python pour le faire. Vite, sale, cp- comme dans l'utilisation:

#!/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()

Utilisez-le comme ça:

myuntar.py archive.tar

Voir aussi similaires script pour décompresser les archives zip.

Réponse Rapide:

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

[NOTE]:

  • -v Répertorier verbeusement les fichiers traités.
  • -z Filtrez l'archive via gzip.
  • -f Utilisez un fichier d'archive ou une ARCHIVE de périphérique.
  • -x Extraire des fichiers d'une archive.
  • -j bzip2.
  • tar -xf archiver.tar # Extraire tous les fichiers de archive.tar.

Au cas où vous ne seriez pas en mesure d'extraire .tar.gz fichier utilisant

tar -xvzf fileName.tar.gz

Essayez d'extraire en utilisant

tar xf fileName.tar.gz

Vous pouvez le faire aussi dans la première étape:

gunzip community_images.tar.gz

Ensuite, vous avez le fichier: community_images.tar

La deuxième étape serait:

tar-xvf community_images.tar

Et le *.le fichier tar serait extrait.

fichier tar xvf.tar.gz

  • x pour extrait
  • v pour verbose (liste des fichiers)
  • f pour nom de fichier est le suivant

Toute version moderne à distance de tar devrait détecter automatiquement que l'archive est compressée et ajouter "z" pour vous.