La compression de fichiers est un utilitaire essentiel sur toutes les plateformes. Il vous aide à réduire la taille des fichiers et à les partager efficacement. Et les fichiers compressés sont également plus faciles à copier sur des serveurs distants.
Vous pouvez également compresser des fichiers plus anciens et rarement utilisés et les enregistrer pour une utilisation future, ce qui vous aide à économiser de l'espace disque.
Dans cet article, nous verrons comment compresser des fichiers avec le tar
commande sous Linux, ainsi que quelques exemples de tar
en action.
Qu'est-ce que la commande tar ?
Nous utilisons le tar
commande pour compresser et décompresser les fichiers à partir de la ligne de commande. La syntaxe est illustrée ci-dessous :
tar [flags] destinationFileName sourceFileName
Le tar
La commande utilise les drapeaux suivants pour personnaliser l'entrée de la commande :
Signal | Explication | Utilisation |
---|---|---|
-c | Créer une nouvelle archive. | Nous utilisons cet indicateur chaque fois que nous devons créer une nouvelle archive. |
-z | Utiliser la compression gzip. | Lorsque nous spécifions cet indicateur, cela signifie que l'archive sera créée à l'aide de la compression gzip. |
-v | Fournir une sortie détaillée. | Fournir l'indicateur -v affiche les détails des fichiers compressés. |
-f | Nom du fichier d'archive. | Les noms de fichiers d'archive sont mappés à l'aide de l'indicateur -f. |
-x | Extrait d'un fichier compressé. | Nous utilisons cet indicateur lorsque des fichiers doivent être extraits d'une archive. |
Comment créer une archive
Nous avons une liste des fichiers suivants que nous allons compresser avec tar
.
Pour les compresser, nous utiliserons tar
comme ceci :
tar -czvf logs_archive.tar.gz *
Décomposons cette commande et examinons chaque indicateur.
-c
est en train de créer et d'archiver.
-z
utilise la compression gzip.
-v
fournit des détails sur les fichiers qui ont été archivés.
-f
crée une archive avec le nom 'logs_archive.tar.gz' comme indiqué dans la commande ci-dessus.
Dans les résultats ci-dessous, nous pouvons voir que l'archive a été créée avec succès.
Comment supprimer des fichiers après compression
Disons que nous ne voulons pas conserver les fichiers originaux après avoir créé une archive. Pour cela, nous pouvons utiliser le --remove-files
drapeau.
tar -czvf logs_archive.tar.gz * --remove-files
Ici, le -czvf
flags fonctionnent comme indiqué précédemment, mais les fichiers d'origine sont également supprimés. Une fois que nous avons répertorié les fichiers, nous ne voyons que l'archive.
Comment afficher le contenu d'une archive
Vous devrez peut-être afficher le contenu d'une archive sans l'extraire. Vous pouvez le faire avec le -t
drapeau.
tar -tvf logs_archive.tar.gz
Dans cette commande, -t
flag spécifie que nous devons uniquement afficher le contenu de l'archive. -f
spécifie le nom du fichier et -v
affiche le contenu détaillé.
Comment extraire une archive
Pour extraire des fichiers d'une archive, vous utilisez le -x
signaler comme ceci :
tar -xzvf logs_archive.tar.gz
Décomposons cette commande et examinons chaque indicateur.
-x
est en train d'extraire et d'archiver.
-z
spécifie que l'archive est gzip.
-v
fournit des détails sur les fichiers qui ont été archivés.
-f
extrait de l'archive nommée 'logs_archive.tar.gz'.
Voici une astuce utile :les commandes qui prennent beaucoup de temps à s'exécuter peuvent continuer en arrière-plan avec &
.
L'ajout de fichiers à une archive et l'extraction d'une archive peuvent prendre un certain temps. Pour que les commandes s'exécutent en arrière-plan pendant que vous continuez à travailler, associez la commande à &
comme ceci :
tar -xzvf logs_archive.tar.gz &
Comment rechercher dans les fichiers journaux compressés
Vous devrez peut-être encore accéder à certains fichiers une fois qu'ils seront archivés. Heureusement, il existe une méthode que vous pouvez utiliser pour rechercher et afficher les fichiers journaux compressés sans les décompresser et sans compromettre l'espace disque.
La commande que vous pouvez utiliser pour rechercher dans les fichiers compressés est zgrep
:
Nous pouvons rechercher une chaîne dans une archive en utilisant la commande ci-dessous :
zgrep -Hna 'string-to-search' compressedFile.tar.gz
Regardons brièvement les drapeaux.
-H
répertorie le nom du fichier qui contient la correspondance.
-n
affiche le numéro de ligne contenant la chaîne correspondante.
-a
traite tous les fichiers comme des fichiers texte.
Voici le résultat :
Conclusion
La compression de fichiers nous permet d'économiser du temps et des ressources lors du partage de fichiers. Les serveurs tournent presque toujours et archivent d'énormes fichiers journaux.
Vous pouvez également programmer la compression de fichiers via cron
travaux pour automatiser le nettoyage du disque. Je vous recommande fortement de profiter de cet utilitaire.
Merci d'avoir lu jusqu'au bout. J'aimerais communiquer avec vous. Vous pouvez me trouver ici sur Twitter. Partagez vos pensées.
À bientôt.