Comment compresser et extraire des fichiers à laide de la commande tar sous Linux

  • Chris Hoffman

    @chrisbhoffman

  • 10 avril 2016 , 6h40 HAE

La commande tar sous Linux est souvent utilisée pour créer des fichiers darchive .tar.gz ou .tgz, également appelés «tarballs». Cette commande a un grand nombre doptions, mais il vous suffit de vous souvenir de quelques lettres pour créer rapidement des archives avec tar. La commande tar peut également extraire les archives résultantes.

La commande GNU tar incluse avec Linux distributions a une compression intégrée. Il peut créer une archive .tar, puis la compresser avec la compression gzip ou bzip2 en une seule commande. Cest pourquoi le fichier résultant est un fichier .tar.gz ou .tar.bz2.

Compresser un répertoire entier ou un seul fichier

Utilisez la commande suivante pour compresser un répertoire entier ou un seul fichier sous Linux. Elle compressera également tous les autres répertoires dans un répertoire que vous spécifiez – en dautres termes , cela fonctionne de manière récursive.

tar -czvf name-of-archive.tar.gz /path/to/directory-or-file

Voici ce que ces commutateurs signifient réellement:

  • -c: Crée une archive.
  • -z: Compresse larchive avec gzip.
  • -v: Affiche la progression dans le terminal lors de la création de larchive, également appelé mode « verbeux ». Le v est toujours facultatif dans ces commandes, mais il est utile.
  • -f: vous permet de spécifier le nom de fichier de larchive.
Publicité

Supposons que vous ayez un répertoire nommé « stuff » dans le répertoire courant et que vous vouliez lenregistrer dans un fichier nommé archive.tar.gz. Vous exécuteriez la commande suivante:

tar -czvf archive.tar.gz stuff

Ou, disons quil y a un répertoire dans / usr / local / quelque chose sur le système actuel et que vous voulez le compresser dans un fichier nommé archive.tar.gz. Vous exécuteriez la commande suivante :

tar -czvf archive.tar.gz /usr/local/something

Compresser plusieurs répertoires ou fichiers à la fois

CONNEXION: Comment gérer des fichiers depuis le terminal Linux: 11 commandes dont vous avez besoin Savoir

Bien que tar soit fréquemment utilisé pour compresser un seul répertoire, vous pouvez également lutiliser pour compresser plusieurs répertoires, plusieurs fichiers individuels ou les deux. Fournissez simplement une liste de fichiers ou de répertoires au lieu dun seul. Par exemple, disons que vous voulez compresser le fichier / home / ubuntu / Do le répertoire wnloads, le répertoire / usr / local / stuff et le fichier /home/ubuntu/Documents/notes.txt. Vous exécutez simplement la commande suivante:

tar -czvf archive.tar.gz /home/ubuntu/Downloads /usr/local/stuff /home/ubuntu/Documents/notes.txt

Répertoriez simplement autant de répertoires ou de fichiers que vous souhaitez sauvegarder.

Exclure Répertoires et fichiers

Dans certains cas, vous souhaiterez peut-être compresser un répertoire entier, mais ne pas inclure certains fichiers et répertoires. Vous pouvez le faire en ajoutant un commutateur --exclude pour chaque répertoire ou fichier que vous souhaitez exclure.

Publicité

Par exemple, disons vous voulez compresser / home / ubuntu, mais vous ne voulez pas compresser les répertoires / home / ubuntu / Downloads et /home/ubuntu/.cache. Voici comment procéder:

tar -czvf archive.tar.gz /home/ubuntu --exclude=/home/ubuntu/Downloads --exclude=/home/ubuntu/.cache

Le commutateur --exclude est très puissant. Il ne prend pas de noms de répertoires et de fichiers – il accepte en fait les modèles. Vous pouvez en faire beaucoup plus. Par exemple, vous pouvez archiver un répertoire entier et exclure tous les fichiers .mp4 avec la commande suivante:

tar -czvf archive.tar.gz /home/ubuntu --exclude=*.mp4

Utilisez plutôt la compression bzip2

Alors que la compression gzip est le plus souvent utilisée pour créer des fichiers .tar.gz ou .tgz, tar prend également en charge la compression bzip2. Cela vous permet de créer des fichiers compressés bzip2, souvent appelés fichiers .tar.bz2, .tar.bz ou .tbz. Pour ce faire, remplacez simplement -z pour gzip dans les commandes ici par un -j pour bzip2.

Publicité

Gzip est plus rapide, mais il compresse généralement un peu moins, donc vous obtenez un fichier un peu plus volumineux. Bzip2 est plus lent, mais il se compresse un peu plus, donc vous obtenez un fichier un peu plus petit. Gzip est également plus courant, avec certains systèmes Linux dépouillés incluant le support gzip par défaut, mais pas le support bzip2. En général, cependant, gzip et bzip2 sont pratiquement la même chose et les deux fonctionneront de la même manière.

Par exemple, au lieu du premier exemple que nous avons fourni pour compresser le répertoire stuff, vous exécuteriez la commande suivante:

tar -cjvf archive.tar.bz2 stuff

Extraire une archive

Une fois que vous avez une archive, vous pouvez lextraire avec la commande tar. La commande suivante extraira le contenu de archive.tar.gz dans le répertoire courant.

tar -xzvf archive.tar.gz

Cest la même chose que la commande de création darchive que nous avons utilisée ci-dessus, sauf le commutateur -x remplace le commutateur -c. Ceci spécifie que vous voulez extraire une archive au lieu den créer une.

Publicité

Vous voudrez peut-être extraire le contenu de larchive dans un répertoire spécifique. Vous pouvez le faire en ajoutant le commutateur -C à la fin de la commande. Par exemple, la commande suivante extraira le contenu du fichier archive.tar.gz dans le répertoire / tmp.

tar -xzvf archive.tar.gz -C /tmp

Si le fichier est un fichier compressé en bzip2, remplacez le « z » dans les commandes ci-dessus par un « j ».

Cest lutilisation la plus simple possible de la commande tar. La commande comprend un grand nombre doptions supplémentaires, nous ne pouvons donc pas toutes les lister ici. Pour plus dinformations. exécutez la commande info tar sur le shell pour afficher la page dinformations détaillées de la commande tar. Appuyez sur la touche q pour quitter la page dinformations lorsque vous avez terminé. Vous pouvez également lire le manuel de tar en ligne.

Si vous utilisez un bureau graphique Linux, vous pouvez également utiliser l’utilitaire de compression de fichiers ou le gestionnaire de fichiers inclus avec votre bureau pour créer ou extraire des fichiers .tar. Sous Windows, vous pouvez extraire et créer des archives .tar avec lutilitaire gratuit 7-Zip.

Chris Hoffman
Chris Hoffman est rédacteur en chef de How-To Geek. Il a écrit sur la technologie pendant près de dix ans et a été chroniqueur sur PCWorld pendant deux ans. Chris a écrit pour le New York Times, a été interviewé en tant quexpert technologique sur des chaînes de télévision comme NBC 6 de Miami, et son travail a été couvert par des médias comme la BBC. Depuis 2011, Chris a écrit plus de 2 000 articles qui ont été lus plus de 500 millions de fois — et cest juste ici sur How-To Geek.Lire la biographie complète « 

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *