Angielskifrancuskihiszpański

Ad


Ulubiona usługa OnWorks

bzcat - Online w chmurze

Uruchom bzcat u dostawcy darmowego hostingu OnWorks przez Ubuntu Online, Fedora Online, emulator online Windows lub emulator online MAC OS

To jest polecenie bzcat, które można uruchomić u dostawcy bezpłatnego hostingu OnWorks, korzystając z jednej z naszych wielu bezpłatnych stacji roboczych online, takich jak Ubuntu Online, Fedora Online, emulator online Windows lub emulator online MAC OS

PROGRAM:

IMIĘ


bzip2, bunzip2 - kompresor plików z sortowaniem bloków, v1.0.6
bzcat - dekompresuje pliki na standardowe wyjście
bzip2recover - odzyskuje dane z uszkodzonych plików bzip2

STRESZCZENIE


bzip2 [ -cdfkqstvzVL123456789 ] [ nazwy plików ... ]
bzip2 [ -h|--pomoc ]
bunzip2 [ -fkvsVL ] [ nazwy plików ... ]
bunzip2 [ -h|--pomoc ]
bzcat [ -s ] [ nazwy plików ... ]
bzcat [ -h|--pomoc ]
bzip2recover filename

OPIS


bzip2 kompresuje pliki przy użyciu algorytmu kompresji tekstu blokowego Burrows-Wheeler,
i kodowanie Huffmana. Kompresja jest na ogół znacznie lepsza niż ta osiągnięta przez
bardziej konwencjonalnych sprężarek opartych na LZ77/LZ78 i zbliża się do wydajności PPM
rodzina kompresorów statystycznych.

Opcje wiersza poleceń są celowo bardzo podobne do tych z GNU gzip, ale oni są
nieidentyczny.

bzip2 oczekuje listy nazw plików towarzyszących flagom wiersza poleceń. Każdy plik jest
zastąpiona skompresowaną wersją samego siebie o nazwie „oryginalna_nazwa.bz2”. Każdy
skompresowany plik ma tę samą datę modyfikacji, uprawnienia i, jeśli to możliwe, własność
jako odpowiedni oryginał, aby te właściwości mogły zostać poprawnie przywrócone w
czas dekompresji. Obsługa nazw plików jest naiwna w tym sensie, że nie ma mechanizmu
do zachowywania oryginalnych nazw plików, uprawnień, właścicieli lub dat w systemach plików, które
nie mają tych pojęć lub mają poważne ograniczenia długości nazw plików, takie jak MS-DOS.

bzip2 i bunzip2 domyślnie nie nadpisze istniejących plików. Jeśli tego chcesz
się zdarzyć, podaj flagę -f.

Jeśli nie określono żadnych nazw plików, bzip2 kompresuje ze standardowego wejścia do standardowego wyjścia.
W tym przypadku, bzip2 odmówi zapisania skompresowanych danych wyjściowych do terminala, ponieważ to by
być całkowicie niezrozumiałe, a zatem bezcelowe.

bunzip2 (lub bzip2 -D) dekompresuje wszystkie określone pliki. Pliki, które nie zostały utworzone przez
bzip2 zostaną wykryte i zignorowane, a ostrzeżenie zostanie wydane. bzip2 próby odgadnięcia
nazwa pliku dla zdekompresowanego pliku od nazwy skompresowanego pliku w następujący sposób:

nazwa_pliku.bz2 staje się nazwą_pliku
nazwa pliku.bz staje się nazwą pliku
nazwapliku.tbz2 staje się nazwąpliku.tar
nazwapliku.tbz staje się nazwąpliku.tar
dowolnanazwa staje się dowolnanazwa.out

Jeśli plik nie kończy się jednym z rozpoznanych zakończeń, .bz2, .bz, .tbz2 or .tbz, bzip2
skarży się, że nie może odgadnąć nazwy oryginalnego pliku i używa oryginalnej nazwy
w .na zewnątrz dołączone.

Podobnie jak w przypadku kompresji, brak nazw plików powoduje dekompresję ze standardowego wejścia do
standardowe wyjście.

bunzip2 poprawnie zdekompresuje plik będący konkatenacją dwóch lub więcej
skompresowane pliki. Wynikiem jest połączenie odpowiednich nieskompresowanych
pliki. Obsługiwane jest również testowanie integralności (-t) połączonych skompresowanych plików.

Możesz także kompresować lub dekompresować pliki na standardowe wyjście, podając opcję -c.
Wiele plików może być kompresowanych i dekompresowanych w ten sposób. Wynikowe dane wyjściowe to
karmione sekwencyjnie na standardowe wyjście. Kompresja wielu plików w ten sposób generuje a
strumień zawierający wiele reprezentacji skompresowanych plików. Taki strumień może być
dekompresowane poprawnie tylko przez bzip2 wersja 0.9.0 lub nowsza. Wcześniejsze wersje bzip2
zatrzyma się po rozpakowaniu pierwszego pliku w strumieniu.

bzcat (lub bzip2 -dc) dekompresuje wszystkie określone pliki na standardowe wyjście.

bzip2 odczyta argumenty ze zmiennych środowiskowych bzip2 i BZIP, w tej kolejności,
i przetworzy je przed jakimikolwiek argumentami odczytanymi z wiersza poleceń. Daje to
wygodny sposób na dostarczenie domyślnych argumentów.

Kompresja jest zawsze wykonywana, nawet jeśli skompresowany plik jest nieco większy niż
oryginał. Pliki mniejsze niż około stu bajtów mają tendencję do powiększania się, ponieważ
mechanizm kompresji ma stały narzut w zakresie 50 bajtów. Losowe dane
(łącznie z wyjściem większości kompresorów plików) jest kodowany na około 8.05 bitów na bajt,
dając ekspansję około 0.5%.

Jako samokontrola dla Twojej ochrony, bzip2 używa 32-bitowych CRC, aby upewnić się, że
zdekompresowana wersja pliku jest identyczna z oryginałem. To chroni przed
uszkodzenie skompresowanych danych i przed niewykrytymi błędami w bzip2 (mam nadzieję, że bardzo
mało prawdopodobny). Szanse na niewykrycie uszkodzenia danych są mikroskopijne, około jednego
szansa w czterech miliardach na każdy przetworzony plik. Pamiętaj jednak, że sprawdzanie ma miejsce
po dekompresji, więc może tylko powiedzieć, że coś jest nie tak. To ci nie pomoże
odzyskać oryginalne nieskompresowane dane. Możesz użyć bzip2recover spróbować odzyskać dane
z uszkodzonych plików.

Zwracane wartości: 0 dla normalnego wyjścia, 1 dla problemów środowiskowych (nie znaleziono pliku, nieprawidłowy
flagi, błędy we/wy itp.), 2 wskazujące na uszkodzony plik skompresowany, 3 w przypadku wewnętrznego
błąd spójności (np. błąd), który spowodował bzip2 panikować.

OPCJE


-c -- stdout
Skompresuj lub rozpakuj do standardowego wyjścia.

-d --rozprężać
Wymuś dekompresję. bzip2, bunzip2 i bzcat są naprawdę tym samym programem, a
decyzja o tym, jakie działania podjąć, jest podejmowana na podstawie używanej nazwy.
Ta flaga zastępuje ten mechanizm i wymusza bzip2 rozpakować.

-z --Kompresja
Uzupełnienie do -d: wymusza kompresję, niezależnie od nazwy wywołania.

-t --test
Sprawdź integralność określonych plików, ale nie dekompresuj ich. To naprawde
wykonuje próbną dekompresję i odrzuca wynik.

-f --siła
Wymuś nadpisanie plików wyjściowych. Zwykle bzip2 nie nadpisze istniejącego
pliki wyjściowe. Również siły bzip2 zerwać twarde linki do plików, które inaczej
nie zrobi.

bzip2 zwykle odmawia dekompresowania plików, które nie mają odpowiedniej magii
bajty nagłówka. Jeśli jednak zostanie wymuszone (-f), przekaże takie pliki przez niezmodyfikowane.
Tak zachowuje się GNU gzip.

-k --trzymać
Zachowaj (nie usuwaj) plików wejściowych podczas kompresji lub dekompresji.

-s --mały
Zmniejsz zużycie pamięci do kompresji, dekompresji i testowania. Pliki są
zdekompresowane i przetestowane przy użyciu zmodyfikowanego algorytmu, który wymaga tylko 2.5 bajta
na bajt bloku. Oznacza to, że każdy plik można zdekompresować w 2300 k pamięci,
aczkolwiek przy około połowie normalnej prędkości.

Podczas kompresji -s wybiera rozmiar bloku 200 k, co ogranicza użycie pamięci do
mniej więcej tyle samo, kosztem współczynnika kompresji. W skrócie, jeśli
twój komputer ma mało pamięci (8 megabajtów lub mniej), użyj -s do wszystkiego. Widzieć
ZARZĄDZANIE PAMIĘCIĄ poniżej.

-q --cichy
Pomiń zbędne komunikaty ostrzegawcze. Komunikaty dotyczące błędów we/wy i
inne zdarzenia krytyczne nie będą pomijane.

-v --gadatliwy
Tryb szczegółowy — pokaż współczynnik kompresji dla każdego przetwarzanego pliku. Dalsze -v
zwiększyć poziom gadatliwości, wyrzucając wiele informacji, które są przede wszystkim
zainteresowanie do celów diagnostycznych.

-h --help
Wydrukuj komunikat pomocy i wyjdź.

-L --licencja -V --wersja
Wyświetl wersję oprogramowania, warunki licencji.

-1 (lub --szybki) do -9 (lub --Najlepsza)
Ustaw rozmiar bloku na 100 k, 200 k ... 900 k podczas kompresji. Nie ma wpływu, gdy
dekompresja. Zobacz ZARZĄDZANIE PAMIĘCIĄ poniżej. --fast i --najlepsze aliasy to
głównie dla zgodności z GNU gzip. W szczególności --szybko nie robi rzeczy
znacznie szybciej. A --best po prostu wybiera zachowanie domyślne.

-- Traktuje wszystkie kolejne argumenty jako nazwy plików, nawet jeśli zaczynają się od myślnika.
Dzięki temu możesz obsługiwać pliki, których nazwy zaczynają się od myślnika, na przykład:
bzip2 -- -nazwa_pliku.

--powtarzane-szybkie --powtarzane-najlepsze
Te flagi są zbędne w wersjach 0.9.5 i nowszych. Dostarczyli trochę gruboziarnistego
kontrolę nad zachowaniem algorytmu sortującego we wcześniejszych wersjach, co było
czasami przydatne. 0.9.5 i nowsze mają ulepszony algorytm, który renderuje te
flagi nieistotne.

PAMIĘĆ ZARZĄDZANIE


bzip2 kompresuje duże pliki w blokach. Rozmiar bloku wpływa zarówno na stopień kompresji
osiągnięte oraz ilość pamięci potrzebnej do kompresji i dekompresji. Flagi -1
do -9 określ rozmiar bloku na 100,000 900,000 bajtów do XNUMX XNUMX bajtów (domyślnie)
odpowiednio. W czasie dekompresji rozmiar bloku używany do kompresji jest odczytywany z
nagłówek skompresowanego pliku i bunzip2 następnie przydziela sobie tylko tyle pamięci, aby
rozpakuj plik. Ponieważ rozmiary bloków są przechowywane w plikach skompresowanych, wynika z tego, że
flagi od -1 do -9 są nieistotne i dlatego są ignorowane podczas dekompresji.

Wymagania dotyczące kompresji i dekompresji w bajtach można oszacować jako:

Kompresja: 400 k + (8 x rozmiar bloku)

Dekompresja: 100 k + (4 x rozmiar bloku) lub
100 tys. + (2.5 x rozmiar bloku)

Większe rozmiary bloków dają szybko malejące krańcowe zyski. Większość kompresji
pochodzi z pierwszych dwustu lub trzystu tysięcy wielkości bloku, o czym warto pamiętać
podczas korzystania z bzip2 na małych maszynach. Ważne jest również, aby docenić, że
Wymagana pamięć dekompresyjna jest ustawiana w czasie kompresji przez wybór rozmiaru bloku.

W przypadku plików skompresowanych z domyślnym rozmiarem bloku 900 k, bunzip2 będzie wymagać około 3700
kilobajtów do rozpakowania. Aby obsługiwać dekompresję dowolnego pliku na maszynie 4 megabajty,
bunzip2 ma opcję dekompresji przy użyciu około połowy tej ilości pamięci, około
2300 kilobajtów. Szybkość dekompresji jest również zmniejszona o połowę, więc z tej opcji należy korzystać tylko wtedy, gdy
niezbędny. Odpowiednia flaga to -s.

Ogólnie rzecz biorąc, spróbuj użyć ograniczeń pamięci o największym rozmiarze bloku, na który pozwalają, ponieważ to
maksymalizuje osiągniętą kompresję. Prędkość kompresji i dekompresji jest praktycznie
na który nie ma wpływu rozmiar bloku.

Kolejna ważna kwestia dotyczy plików, które mieszczą się w jednym bloku – czyli większość
pliki, które napotkasz przy użyciu dużego rozmiaru bloku. Ilość dotkniętej pamięci rzeczywistej wynosi
proporcjonalna do rozmiaru pliku, ponieważ plik jest mniejszy niż blok. Do
Na przykład skompresowanie pliku o długości 20,000 9 bajtów z flagą -XNUMX spowoduje, że kompresor
przydzielić około 7600 k pamięci, ale dotknij tylko 400 k + 20000 * 8 = 560 kbajtów.
Podobnie dekompresor przydzieli 3700 k, ale dotknie tylko 100 k + 20000 * 4 = 180
kilobajtów.

Oto tabela, która podsumowuje maksymalne wykorzystanie pamięci dla różnych rozmiarów bloków. Także
zarejestrowany jest całkowity skompresowany rozmiar 14 plików z Calgary Text Compression Corpus
łącznie 3,141,622 XNUMX XNUMX bajtów. Ta kolumna daje pewne wyobrażenie o tym, jak kompresja zmienia się wraz z
rozmiar bloku. Liczby te mają tendencję do niedoceniania zalet większych rozmiarów bloków dla
większe pliki, ponieważ Korpus jest zdominowany przez mniejsze pliki.

Kompresuj Dekompresuj Dekompresuj Korpus
Użycie flagi -s użycie Rozmiar

-1 1200 tys. 500 tys. 350 tys. 914704
-2 2000 tys. 900 tys. 600 tys. 877703
-3 2800 tys. 1300 tys. 850 tys. 860338
-4 3600 tys. 1700 tys. 1100 tys. 846899
-5 4400 tys. 2100 tys. 1350 tys. 845160
-6 5200 tys. 2500 tys. 1600 tys. 838626
-7 6100 tys. 2900 tys. 1850 tys. 834096
-8 6800 tys. 3300 tys. 2100 tys. 828642
-9 7600 tys. 3700 tys. 2350 tys. 828642

ODZYSKIWANIE DATA OD USZKODZONY AKTA


bzip2 kompresuje pliki w blokach, zwykle o długości 900 kilobajtów. Każdy blok jest obsługiwany
niezależnie. Jeśli błąd nośnika lub transmisji powoduje, że wieloblokowy plik .bz2 staje się
uszkodzony, może być możliwe odzyskanie danych z nieuszkodzonych bloków w pliku.

Skompresowana reprezentacja każdego bloku jest ograniczona 48-bitowym wzorem, co sprawia, że:
możliwe jest znalezienie granic bloków z rozsądną pewnością. Każdy blok również
posiada własny 32-bitowy kod CRC, dzięki czemu można odróżnić uszkodzone bloki od nieuszkodzonych.

bzip2recover to prosty program, którego celem jest wyszukiwanie bloków w plikach .bz2 oraz
zapisz każdy blok do własnego pliku .bz2. Możesz wtedy użyć bzip2 -t przetestować
integralność wynikowych plików i dekompresuj te, które są nieuszkodzone.

bzip2recover przyjmuje pojedynczy argument, nazwę uszkodzonego pliku, i zapisuje liczbę
pliki „rec00001file.bz2”, „rec00002file.bz2” itp. zawierające wyodrębnione bloki.
Nazwy plików wyjściowych są zaprojektowane tak, aby w późniejszym przetwarzaniu używać symboli wieloznacznych --
na przykład "bzip2 -dc rec*file.bz2 > odzyskane_dane" -- przetwarza pliki w
prawidłowa kolejność.

bzip2recover powinien być najbardziej przydatny w przypadku dużych plików .bz2, ponieważ będą one zawierać
wiele bloków. Używanie go na uszkodzonych plikach jednoblokowych jest oczywiście bezcelowe, ponieważ a
uszkodzony blok nie może być odzyskany. Jeśli chcesz zminimalizować potencjalną utratę danych
przez błędy mediów lub transmisji, możesz rozważyć kompresję z mniejszym blokiem
rozmiar.

DZIAŁANIE UWAGI


W fazie sortowania kompresji zbierane są podobne ciągi w pliku. Z powodu
to pliki zawierające bardzo długie serie powtarzających się symboli, takie jak „aabaabaabaab…”
(powtórzone kilkaset razy) może kompresować się wolniej niż zwykle. Wersje 0.9.5 i
powyżej wypadają pod tym względem znacznie lepiej niż poprzednie wersje. Stosunek najgorszych
czas kompresji przypadku i średniej wielkości przypadku jest w zakresie 10:1. W przypadku poprzednich wersji
liczba ta była bardziej jak 100:1. Możesz użyć opcji -vvvv do monitorowania postępów w
bardzo szczegółowy, jeśli chcesz.

Zjawiska te nie mają wpływu na szybkość dekompresji.

bzip2 zwykle przydziela kilka megabajtów pamięci do działania, a następnie ładuje wszystko
nad tym w dość przypadkowy sposób. Oznacza to, że wydajność, zarówno przy kompresji, jak i
dekompresja, jest w dużej mierze zdeterminowana przez szybkość, z jaką twój komputer może obsługiwać pamięć podręczną
tęskni. Z tego powodu wprowadzono niewielkie zmiany w kodzie w celu zmniejszenia częstości chybień
zaobserwowano, że daje nieproporcjonalnie dużą poprawę wydajności. wyobrażam sobie bzip2 będzie
działają najlepiej na komputerach z bardzo dużymi pamięciami podręcznymi.

OSTRZEŻENIA


Komunikaty o błędach we/wy nie są tak pomocne, jak mogłyby być. bzip2 stara się wykryć I/O
błędy i wychodzą czysto, ale szczegóły na czym polega problem czasem wydają się raczej
zwodniczy.

Ta strona podręcznika dotyczy wersji 1.0.6 programu bzip2. Skompresowane dane utworzone przez to
wersja jest w pełni kompatybilna w przód i wstecz z poprzednimi wydaniami publicznymi,
wersje 0.1pl2, 0.9.0, 0.9.5, 1.0.0, 1.0.1, 1.0.2 i nowsze, ale z następującymi
wyjątek: 0.9.0 i nowsze mogą poprawnie dekompresować wiele połączonych skompresowanych
pliki. 0.1pl2 nie może tego zrobić; zatrzyma się po dekompresji tylko pierwszego pliku w
Strumień.

bzip2recover wersje przed 1.0.2 używały 32-bitowych liczb całkowitych do reprezentowania pozycji bitowych w
skompresowanych plików, więc nie mogły obsłużyć skompresowanych plików o długości większej niż 512 megabajtów.
Wersje 1.0.2 i nowsze używają 64-bitowych intów na niektórych platformach, które je obsługują (GNU
obsługiwane cele i Windows). Aby ustalić, czy bzip2recover został zbudowany z
takie ograniczenie, uruchom go bez argumentów. W każdym razie możesz zbudować siebie i
nieograniczona wersja, jeśli możesz ją przekompilować z MaybeUInt64 ustawionym na niepodpisany 64-bit
liczba całkowita.

Korzystaj z bzcat online za pomocą usług onworks.net


Darmowe serwery i stacje robocze

Pobierz aplikacje Windows i Linux

Komendy systemu Linux

Ad