Alors que l'utilitaire de ligne de commande bzip2 peut être utilisé pour compresser des fichiers, il existe de nombreux autres outils qui vous permettent d'effectuer des tâches de base - comme la comparaison de tels fichiers - sans avoir besoin de les décompresser. Ici, dans ce didacticiel, nous aborderons les bases des commandes bzcmp, bzdiff, bzmore, bzless et bzgrep à l'aide d'exemples faciles à comprendre.
Mais avant cela, il convient de mentionner que tous les exemples de cet article ont été testés sur une machine Ubuntu 18.04 LTS.
Commandes Linux bzcmp, bzdiff, bzmore, bzless et bzgrep
Nous discuterons de chacune de ces commandes en utilisant le style de présentation Q&R.
Q1. Comment fonctionnent les commandes bzcmp et bzdiff ?
Comme leur nom l'indique, ces commandes sont utilisées pour comparer les fichiers .bz2. Voici leur syntaxe :
bzcmp [ cmp_options ] file1 [ file2 ]
bzdiff [ diff_options ] file1 [ file2 ]
Et voici ce que dit la page de manuel à leur sujet :
Bzcmp and bzdiff are used to invoke the cmp or the diff program on
bzip2 compressed files. All options specified are passed directly to
cmp or diff. If only 1 file is specified, then the files compared are
file1 and an uncompressed file1.bz2. If two files are specified, then
they are uncompressed if necessary and fed to cmp or diff. The exit
status from cmp or diff is preserved.
Voici un exemple basique de bzcmp et bzdiff :
bzcmp file1.bz2 file2.bz2
bzdiff file1.bz2 file2.bz2
Et la capture d'écran suivante montre la sortie produite par ces commandes :
Bien que ces commandes n'offrent pas explicitement d'options de ligne de commande, vous pouvez utiliser les options des commandes cmp et diff (car ces outils sont invoqués en interne par les commandes bzcmp et bzdiff).
Q2. Comment fonctionnent les commandes bzmore et bzless ?
Tout comme plus et moins, bzmore et bzless sont des filtres pour l'affichage CRT, mais pour les fichiers bz2 compressés. Pour vous donner une meilleure idée, voici un extrait de bzmore tiré de sa page de manuel :
Bzmore is a filter which allows examination of compressed or plain text
files one screenful at a time on a soft-copy terminal. bzmore works on
files compressed with bzip2 and also on uncompressed files. If a file
does not exist, bzmore looks for a file of the same name with the addi?
tion of a .bz2 suffix.
Bzmore normally pauses after each screenful, printing --More-- at the
bottom of the screen. If the user then types a carriage return, one
more line is displayed. If the user hits a space, another screenful is
displayed. Other possibilities are enumerated later.
Bien sûr, vous pouvez également utiliser ces commandes pour afficher simplement un fichier compressé. Voici un exemple :
Q3. Comment fonctionne la commande bzgrep ?
Comme vous l'auriez deviné maintenant, bzgrep fonctionne également sur les lignes d'autres commandes de la série bz que nous avons expliquées ici. Plus précisément, c'est grep, mais pour les fichiers compressés. Voici un extrait de la page de manuel de cette commande :
Bzgrep is used to invoke the grep on bzip2-compressed files. All
options specified are passed directly to grep. If no file is speci?
fied, then the standard input is decompressed if necessary and fed to
grep. Otherwise the given files are uncompressed if necessary and fed
to grep.
Voici un exemple d'utilisation de bzgrep :
bzgrep "menu" file1.bz2
La capture d'écran suivante montre le résultat :
Conclusion
Donc, si vous avez affaire à des fichiers compressés (.bz2) et que vous souhaitez effectuer des opérations de base telles que la recherche, la comparaison, etc., vous pouvez utiliser ces commandes. Nous avons discuté des bases ici. Pour plus d'informations sur ces outils, rendez-vous sur leurs pages de manuel (ici, ici et ici).