Comment utiliser la commande tar Linux pour archiver et compresser des fichiers

Comment utiliser la commande tar Linux pour archiver et compresser des fichiers

tar signifie tape archive et est un utilitaire de ligne de commande Linux très répandu pour l’archivage et la compression de fichiers. Développée à l’origine pour sauvegarder des données sur des lecteurs de bandes, la commande tar a considérablement évolué au fil des ans.

Aujourd’hui, son objectif principal est de combiner plusieurs fichiers et répertoires en un seul fichier d’archive, ce qui simplifie le stockage et le transfert. En outre, la commande tar de Linux peut compresser ces archives pour économiser de l’espace disque.

Dans cet article, nous allons explorer la syntaxe, les options et les exemples pratiques de cette commande. À la fin de ce guide, vous serez en mesure d’utiliser efficacement tar dans les systèmes Linux, ce qui rendra vos tâches de gestion de données plus efficaces et mieux organisées.

Syntaxe de la commande tar Linux

La structure de base de la commande tar est la suivante :

tar [options] [fichier-archive] [fichier ou répertoire à archiver]

Voici une description détaillée de chaque élément :

  • [options]. Indicateurs qui modifient le comportement de la commande. Ces options peuvent spécifier des actions telles que la création, l’extraction ou l’énumération du contenu d’une archive. Elles comprennent également des options de compression et des paramètres de sortie en mode verbeux.
  • [fichier-archive]. Nom du fichier d’archive résultant. C’est là que seront stockés les fichiers et les répertoires spécifiés. Le fichier d’archive peut avoir différentes extensions en fonction de la compression utilisée, telles que .tar, .tar.gz, ou .tar.bz2.
  • [fichier ou répertoire à archiver]. Les fichiers ou répertoires à inclure dans l’archive. Vous pouvez spécifier plusieurs noms de fichiers et de répertoires, qui seront combinés en un seul fichier d’archive.

Vous trouverez ci-dessous un exemple de la syntaxe de la commande tar qui montre comment ces composants fonctionnent ensemble :

tar -cvf nom_archive.tar /chemin/vers/répertoire_ou_fichier

-cvf sont les options utilisées, nom_archive.tar est le nom du fichier d’archive tar, et /chemin/vers/répertoire_ou_fichier spécifie les fichiers ou répertoires à archiver.

Lectures recommandées

Vous venez de découvrir Linux ? Apprenez les commandes Linux les plus utilisées pour améliorer vos compétences en ligne de commande et rationaliser votre flux de travail.

Options couramment utilisées

Voici quelques-unes des options de tar les plus couramment utilisées pour effectuer différentes tâches :

  • Créer (-c). Créer une nouvelle archive.
  • Extraire (-x). Extrait les fichiers d’une archive.
  • Verbose (-v). Affiche la sortie détaillée du processus.
  • Fichier (-f). Indique le fichier d’archive.
  • Compresser avec gzip (-z). L’archive sera compressée à l’aide de gzip, ce qui donnera un fichier .tar.gz.
  • Compresser avec bzip2 (-j). Compresse l’archive en utilisant bzip2, ce qui donne un fichier .tar.bz2.
  • Compresser avec xz (-J). Compresse l’archive en utilisant xz, ce qui produit un fichier .tar.xz.

Vous pouvez également combiner des options dans une même commande pour effectuer des tâches plus complexes. Par exemple, pour créer une archive de fichiers compressés par gzip et afficher une sortie détaillée, utilisez :

tar -czvf nom_archive.tar.gz /chemin/vers/répertoire_ou_fichier

Exemples de la commande tar

Voici quelques exemples pratiques de commandes tar pour vous aider à comprendre cet outil polyvalent. Mais avant de poursuivre, assurez-vous de préparer un appareil basé sur Linux. Si vous n’en avez pas, vous pouvez acheter un VPS Linux chez Hostinger et le faire fonctionner correctement.

Création d’archives

Vous pouvez créer une archive tar pour combiner plusieurs fichiers et répertoires en un seul fichier d’archive. Voici un exemple de création d’une archive nommée exemple.tar contenant fichier1.txt, fichier2.txt et répertoire1 :

tar -cvf exemple.tar fichier1.txt fichier2.txt répertoire1

Vous devriez obtenir un résultat similaire à celui qui suit :

fichier1.txt

fichier2.txt

répertoire1/

répertoire1/fichier_dans_répertoire.txt

En attendant, pour créer une archive compressée en bzip2 nommée exemple.tar.bz2, utilisez la commande ci-dessous :

tar -cvjf exemple.tar.bz2 fichier1.txt fichier2.txt

Si vous souhaitez créer une archive contenant tous les fichiers et sous-répertoires de mon_répertoire mais excluant tous les fichiers .log, exécutez :

tar -cvf exemple.tar --exclude='*.log' mon_répertoire/

Cette commande utilise –exclude=’pattern’ pour exclure de l’archive les fichiers correspondant au motif.

Extraction d’archives

L’extraction d’une archive vous permet de récupérer les fichiers et les répertoires qui ont été regroupés en un seul fichier. Entrez la commande suivante pour extraire un fichier tar nommé exemple.tar dans le répertoire actuel :

tar -xvf exemple.tar

Voici la liste des fichiers et des répertoires extraits :

image1.jpg

image2.jpg

répertoire1.jpg

répertoire1/image_dans_répertoire.jpg

Pour extraire le contenu de exemple.tar dans un autre répertoire nommé répertoire_destination, tapez ce qui suit :

tar -C répertoire_destination/ -xvf exemple.tar 

Cette commande utilise l’option -C pour spécifier le répertoire dans lequel les fichiers seront extraits.

Ajout de fichiers à une archive existante

Vous pouvez ajouter des fichiers à une archive existante sans en créer une nouvelle. La commande suivante ajoute fichier3.txt, fichier4.txt et répertoire2 à l’archive exemple.tar :

tar -rvf exemple.tar fichier3.txt fichier4.txt répertoire2

Il utilise l’option -r pour ajouter des fichiers et des répertoires à la fin d’une archive.

Une fois exécutée, une sortie indiquant les fichiers ajoutés à l’archive s’affiche :

fichier3.txt

fichier4.txt

répertoire2/

répertoire2/fichier_dans_répertoire2.txt

Affichage du contenu d’une archive

L’affichage du contenu d’une archive vous permet de voir quels sont les fichiers et les répertoires qu’elle contient. Pour ce faire, utilisez l’option -t comme dans l’exemple suivant :

tar -tvf exemple.tar

Voici le résultat attendu :

-rw-r--r-- user/group 12345 2025-01-04 12:34 fichier1.txt

-rw-r--r-- user/group 67890 2025-01-04 12:34 fichier2.txt

drwxr-xr-x user/group 4096 2025-01-04 12:34 répertoire1/

-rw-r--r-- user/group 13579 2025-01-04 12:34 répertoire1/fichier_dans_répertoire.txt

Veuillez noter que pour lister le contenu d’une archive compressée, vous devez utiliser des options supplémentaires. Par exemple, pour les archives compressées par gzip, ajoutez l’option -z, et pour les archives compressées par bzip2, utilisez -j :

tar -tvzf exemple.tar.gz

tar -tvjf exemple.tar.bz2

Extraction de fichiers spécifiques d’une archive

Avec tar, vous pouvez également extraire des fichiers spécifiques d’un fichier d’archive sans extraire l’archive entière. Par exemple, pour extraire un fichier nommé fichier1.txt de example.tar :

tar -xvf exemple.tar fichier1.txt

Si vous souhaitez extraire plusieurs fichiers d’une archive, listez leurs noms dans votre commande comme suit :

tar -xvf exemple.tar fichier1.txt fichier2.txt image1.jpg

Mise à jour des archives

L’option -u permet de mettre à jour le contenu d’une archive tar existante en y ajoutant des versions plus récentes des fichiers. 

Cependant, les noms des fichiers doivent être les mêmes que ceux des anciens fichiers de l’archive pour que la mise à jour fonctionne correctement. Sinon, tar les ajoutera en tant que nouveaux fichiers.

Voici un exemple de commande que vous pouvez exécuter :

tar -uvf exemple.tar fichier1.txt fichier2.txt

Concaténation d’archives

La concaténation d’archives vous permet de combiner plusieurs archives tar en une seule archive. C’est utile pour consolider les sauvegardes ou organiser davantage les fichiers. Le premier nom d’archive listé sera le fichier d’archive principal.

Pour concaténer archive2.tar dans archive1.tar, tapez :

tar -Af archive1.tar archive2.tar

Cette commande utilise l’option -A pour ajouter des fichiers tar à une archive.

Pour concaténer plusieurs archives, il suffit de les énumérer :

tar -Af archive1.tar archive2.tar archive3.tar

Lorsqu’il est exécuté, tar ajoute le contenu de archive2.tar et archive3.tar à archive1.tar.

Il est important de noter que vous ne pouvez pas concaténer des archives de formats différents, tels que .tar et .tar.gz, directement avec la commande tar.

Suppression de membres d’une archive

Enfin, vous pouvez utiliser la commande tar pour supprimer des fichiers ou des répertoires spécifiques sans avoir à recréer l’archive entière. Voici un exemple de suppression d’un fichier nommé fichier1.txt dans le fichier exemple.tar :

tar --delete -f exemple.tar fichier1.txt

La commande ci-dessus utilise –delete pour supprimer les fichiers spécifiés de l’archive.

Pour supprimer de l’archive un répertoire nommé rép1 et tout son contenu, exécutez :

tar --delete -f exemple.tar rép1/

Veuillez noter que l’option –delete peut ne pas être disponible dans certaines anciennes versions de tar ou dans les systèmes basés sur BSD. Dans ce cas, vous devez extraire l’archive, supprimer les fichiers indésirables et créer une nouvelle archive.

Consultez notre article sur l’utilisation des commandes rmdir et rm pour supprimer efficacement des répertoires sous Linux.

Conclusion

Dans cet article, vous avez appris à utiliser la commande tar pour différentes tâches d’archivage de fichiers, notamment la création, l’extraction et la suppression de fichiers d’une archive. Vous pouvez également utiliser cette commande pour compresser des dossiers dans différents formats, tels que gzip et bzip2.

La maîtrise de la commande tar est inestimable pour les sauvegardes et l’administration du système. Elle permet d’améliorer les capacités de gestion des fichiers, de rationaliser les tâches et d’améliorer l’organisation dans les environnements Linux.

Commande tar Linux – FAQ

À quoi sert la commande tar sous Linux ?

La commande tar de Linux crée, maintient, modifie et extrait des fichiers d’archive. Elle combine plusieurs fichiers en un seul pour faciliter la distribution ou la sauvegarde et prend en charge différents formats de compression.

Comment créer une archive compressée par gzip ?

Pour créer une archive compressée par gzip, ajoutez les options -cvzf à votre commande tar. L’exemple suivant compresse les fichiers fichier1 et fichier2 dans le fichier nom_archive.tar.gz :
tar -cvzf nom_archive.tar.gz fichier1 fichier2

Quelle est la différence entre les options -z, -j et -J ?

L’option -z compresse les archives à l’aide de gzip, -j utilise bzip2 et -J utilise la compression xz. Chacune de ces options offre des taux de compression et des vitesses différents, gzip étant la plus rapide et xz offrant la compression la plus élevée.

Author
L'auteur

Ismail

Ismail est un spécialiste du référencement et de la localisation chez Hostinger. Il est passionné par la technologie et le développement web et possède des années d'expérience dans le domaine informatique. Ses passe-temps incluent les jeux vidéo et le football.