Komprimieren Sie die Befehlsausgabe, indem Sie sie an bzip2 weiterleiten


11

Ist es möglich, eine Befehlsausgabe zur Komprimierung in eine Ausgabedatei an bzip2 weiterzuleiten?

Etwas in der Art von:

cat somefile.txt | bzip2 --output somefile.txt.bz2

Ich empfehle nicht, bzip2 zu verwenden, es ist langsamer und hat eine schlechtere Komprimierung als xz
Dmitry Kudriavtsev

Antworten:


13

Sie können dies mit bzip2der -cOption tun :

       -c --stdout
              Compress or decompress to standard output.

Beispielsweise:

command | bzip2 -c > some.txt.bz2

Und zu dekomprimieren:

bzip2 -dc < some.txt.bz2 | less

4

Das Dienstprogramm bzip2 komprimiert stdin, schreibt es jedoch nicht in stdout, wenn stdout ein Terminal ist. Sie können jedoch Standardtechniken für die Ausgabeumleitung verwenden.

command | bzip2 >somefile.txt.bz2

und um es zu lesen, stehen die üblichen Werkzeuge zur Verfügung, z

bzless somefile.txt.bz2

1
Seltsamerweise ist die Dokumentation für bzip2 ziemlich gut.
user9517
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.