Skip to main content

Utiliser 'bzip2' pour compresser des fichiers Linux

Commandes de base Linux - Ep47 - archiver et compresser (Juin 2025)

Commandes de base Linux - Ep47 - archiver et compresser (Juin 2025)
Anonim

La seule chose que vous savez tous sur Linux, c'est qu'il y a beaucoup de variété. Il existe des centaines de distributions Linux, avec des dizaines d’environnements de bureau, plusieurs suites bureautiques, des packages graphiques et des packages audio.

Linux est un autre domaine dans lequel il est possible de compresser des fichiers.

Les utilisateurs Windows savent déjà ce qu’est un fichier zip et les commandes "zip" et "unzip" seront donc utilisées pour compresser et décompresser des fichiers au format "zip".

Une autre méthode de compression de fichiers consiste à utiliser la commande "gzip" et à décompresser un fichier avec une extension "gz". Vous pouvez également utiliser la commande "gunzip".

Dans ce guide, je vais vous montrer une autre commande de compression appelée "bzip2".

Pourquoi utiliser 'bzip2' sur 'gzip'?

La commande "gzip" utilise la méthode de compression LZ77. L'outil de compression "bzip2" utilise l'algorithme "Burrows-Wheeler".

Alors, quelle méthode devriez-vous utiliser pour compresser un fichier?

Le test exécute chaque commande en utilisant les paramètres de compression par défaut et vous verrez que la commande "bzip2" est la meilleure solution pour réduire la taille du fichier.

Cependant, si vous regardez le temps nécessaire pour compresser le fichier, cela prend beaucoup plus de temps.

Il convient de souligner la 3ème colonne du tableau intitulée "lzmash". Cela équivaut à exécuter la commande "gzip" avec le niveau de compression défini sur "-9" ou, pour le dire en anglais, "la plus compressée".

La commande "lzmash" prend plus de temps que la commande "gzip" par défaut, mais le fichier est considérablement réduit et sa taille est inférieure à celle de "bzip2". Il convient également de noter que cela prend moins de temps pour le faire.

Par conséquent, votre décision sera de savoir combien de temps vous souhaitez compresser les fichiers et combien de temps vous êtes prêt à attendre.

Dans les deux cas, la commande "gzip" est légèrement meilleure dans les deux cas.

Compresser des fichiers en utilisant 'bzip2'

Pour compresser un fichier en utilisant le format "bzip2", exécutez la commande suivante:

nom de fichier bzip2

Le fichier sera compressé et aura maintenant l'extension ".bz2"

Le "bzip2" essaiera toujours de compresser le fichier même si le fichier devient plus volumineux. Cela peut se produire lorsque vous compressez un fichier déjà compressé.

Si vous essayez de compresser un fichier qui portera le même nom qu'un fichier compressé existant, une erreur se produira.

Par exemple, si vous avez un type de fichier appelé "fichier1" et que le dossier contient déjà un fichier appelé "fichier1.bz2", lors de l'exécution de la commande "bzip", vous verrez le résultat suivant:

bzip2: le fichier de sortie fichier1.bz2 existe déjà

Comment décompresser des fichiers

Il existe de nombreuses façons de décompresser des fichiers portant l’extension "bz2".

Vous pouvez utiliser la commande "bzip2" comme suit:

bzip2 -d nomfichier.bz2

Cela décompresse le fichier et supprime l'extension "bz2".

Si, en décompressant le fichier, un fichier portant le même nom est écrasé, l'erreur suivante s’affiche:

bzip2: le nom du fichier de sortie existe déjà

Un moyen plus agréable de décompresser des fichiers avec l'extension "bz2" consiste à utiliser la commande "bunzip2". Avec cette commande, vous n'avez pas besoin de spécifier de commutateur, comme indiqué ci-dessous:

bunzip2 nomfichier.bz2

La commande "bunzip2" s'exécute exactement de la même manière que la commande "bzip2" avec le commutateur moins d (-d).

La commande "bunzip2" peut extraire tout fichier valide compressé à l'aide de "bzip" ou "bzip2". En plus de la décompression de fichiers ordinaires, il peut également décompresser les fichiers tar compressés à l'aide de la commande "bzip2".

Par défaut, les fichiers tar compressés à l'aide de la commande "bzip2" auront l'extension ".tbz2". Lorsque vous décompressez ce fichier à l'aide de la commande "bunzip2", le nom de fichier devient "filename.tar".

Si vous avez un fichier valide qui a été compressé avec "bzip2" mais dont l'extension est différente de celle de "bzip2", le fichier sera décompressé, mais l'extension ".out" sera ajoutée à la fin du fichier. Par exemple, "myfile.myf" deviendra "myfile.out".

Comment forcer les fichiers à être compressés

Si vous souhaitez que la commande "bzip2" comprime un fichier, qu'un fichier portant l'extension "bz2" existe déjà, vous pouvez utiliser la commande suivante:

bzip2 -f myfile

Si vous avez un fichier appelé "myfile" et un autre appelé "myfile.bz2", le fichier "myfile.bz2" sera écrasé lorsque "myfile" sera compressé.

Comment conserver les deux fichiers

Si vous souhaitez conserver le fichier que vous compressez et le fichier compressé, vous pouvez utiliser la commande suivante:

bzip2 -k myfile

Cela conservera le fichier "myfile" mais le compressera également et créera un fichier "myfile.bz2".

Vous pouvez également utiliser le commutateur moins k (-k) avec la commande "bunzip2" pour conserver le fichier compressé et le fichier non compressé pendant la décompression du fichier.

Tester la validité d'un fichier "bz2"

Vous pouvez tester si un fichier est compressé avec le mécanisme de compression "bzip2" à l'aide de la commande suivante:

bzip2 -t nomfichier.bz2

Si le fichier est un fichier valide, aucune sortie ne sera renvoyée, mais si le fichier n'est pas valide, vous recevrez un message l'informant.

Utiliser moins de mémoire lors de la compression de fichiers

Si la commande "bzip2" utilise trop de ressources lors de la compression d'un fichier, vous pouvez réduire l'impact en spécifiant le commutateur moins s (-s) comme suit:

bzip2 -s nomfichier.bz2

Notez que la compression d'un fichier à l'aide de ce commutateur prend plus de temps.

Obtenir plus d'informations lors de la compression de fichiers

Par défaut, lorsque vous exécutez les commandes "bzip2" ou "bunzip2", vous ne recevez aucune sortie et le nouveau fichier apparaît simplement.

Si vous voulez savoir ce qui se passe lorsque vous compressez ou décompressez un fichier, vous pouvez obtenir une sortie plus détaillée en spécifiant le commutateur moins v (-v) comme suit:

bzip2 -v nomfichier

La sortie apparaîtra comme suit:

nom du fichier: 1.172: 1 6.872 bits / octet 14.66% de sauvegarde 50341 dans 42961 sur

Les parties importantes sont le pourcentage enregistré, la taille d'entrée et la taille de sortie.

Récupérer des fichiers cassés

Si vous avez un fichier "bz2" cassé, le programme à utiliser pour essayer de récupérer les données est le suivant:

bzip2recover nom_fichier.bz2