Skompresuj dane wyjściowe polecenia przez potokowanie do bzip2


11

Czy jest możliwe przesłanie danych wyjściowych polecenia do bzip2 w celu kompresji do pliku wyjściowego?

Coś w stylu:

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

Nie polecam używania bzip2, jest wolniejszy i ma gorszą kompresję niż xz
Dmitry Kudriavtsev

Odpowiedzi:


14

Można to zrobić z bzip2„s -copcji:

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

Na przykład:

command | bzip2 -c > some.txt.bz2

I dekompresować:

bzip2 -dc < some.txt.bz2 | less

4

Narzędzie bzip2 kompresuje stdin, ale nie zapisuje go na stdout, jeśli stdout jest terminalem. Możesz jednak użyć standardowych technik przekierowania wyjścia.

command | bzip2 >somefile.txt.bz2

i do czytania dostępne są zwykłe narzędzia, np

bzless somefile.txt.bz2

1
O dziwo dokumentacja jest całkiem dobra dla bzip2.
user9517
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.