GNU/Linux >> Tutoriels Linux >  >> Linux

Tar :Extraire un seul fichier dans un répertoire sans créer de sous-dossiers ?

Mon objectif est d'obtenir le helm binaire de helm-v2.5.0-linux-amd64.tar.gz dans mon /usr/local/bin en aussi peu d'étapes que possible. Le défi est que le .tar.gz le fichier contient le binaire dans un linux-amd64 sous-répertoire.

Alors quand je fais ça :

$ wget -P /tmp https://storage.googleapis.com/kubernetes-helm/helm-v2.5.0-linux-amd64.tar.gz
$ tar -xzvf /tmp/helm-v2.5.0-linux-amd64.tar.gz -C /usr/local/bin linux-amd64/helm

Je me retrouve avec /usr/local/bin/linux-amd64/helm au lieu de /usr/local/bin/linux-amd64/helm .

Existe-t-il un tar paramètre qui me manque ou dois-je inclure des mv &étapes de nettoyage ?

Réponse acceptée :

Vous devez utiliser --strip-components=NUMBER :

--strip-components=NUMBER
          Strip NUMBER leading components from file names on extraction.

ce qui signifie que votre commande devrait ressembler à ceci :

tar -xzvf /tmp/helm-v2.5.0-linux-amd64.tar.gz -C /usr/local/bin --strip-components=1 linux-amd64/helm

Linux
  1. Comment extraire des fichiers tar dans un répertoire spécifique ou différent sous Linux

  2. Comment extraire les fichiers .gz et .tar.gz sous Linux

  3. Comment extraire ou décompresser le fichier tar.xz sous Linux

  4. Exclure le répertoire lors de la création d'un fichier .tar.gz

  5. Comment extraire le fichier filename.tar.gz

Comment extraire (décompresser) le fichier Tar Gz

Comment extraire (décompresser) le fichier Tar Bz2

Comment extraire (décompresser) le fichier tar.xz

Comment tarer des types de fichiers spécifiques (extensions) dans un répertoire

Comment extraire le fichier Tar.xz sur la ligne de commande Linux

Extraire le fichier tar.gz sous Linux