Comanda Linux bunzip2: Cum se folosește

Ce să știi

  • Utilizați opțiunea de comandă -c --stdout a comprima/decomprima la ieșire standard și -d --decomprima pentru a forța decompresia.
  • Utilizare -t --test pentru a verifica integritatea fișierelor specificate. Utilizare -f --forță pentru a forța suprascrierea fișierelor de ieșire. Utilizare -k --ţine pentru a păstra fișierele de intrare.
  • Utilizare -s --mic pentru a reduce utilizarea memoriei și -q --liniște pentru a suprima mesajele de avertizare. Utilizare -v --verbos pentru a afișa rapoartele de compresie a fișierelor.

Acest articol explică cum se utilizează Linux bunzip2 comanda, care este un compresor de fișiere cu sortare bloc care poate fi folosit atât pentru comprimarea, cât și pentru decomprimarea datelor. Când executați bzip2 fără opțiuni, sistemul comprimă datele în mod implicit. bunzip2 decomprimă implicit și bzcat se decomprimă la stdout.

Opțiuni de comandă Linux Bunzip2

Lista de opțiuni de comandă bunzip2
Opțiune Explicaţie
-c --stdout Comprimați sau decomprimați la ieșire standard.
-d --decomprima Forța de decompresie. bzip2, bunzip2 și bzcat sunt într-adevăr același program, iar decizia cu privire la acțiunile de luat se face pe baza numelui folosit. Acest flag suprascrie mecanismul și forțează bzip2 să decomprima.
-z --comprima Complementul la -d: forțează compresia, indiferent de numele invocației.
-t --test Verificați integritatea fișierelor specificate, dar nu le decomprimați. Acest lucru realizează într-adevăr o decompresie de probă și aruncă rezultatul.
-f --forță

Forțați suprascrierea fișierelor de ieșire. În mod normal, bzip2 nu va suprascrie fișierele de ieșire existente. De asemenea, forțează bzip2 să rupă legăturile dure către fișiere, ceea ce altfel nu ar face.

bzip2 refuză în mod normal să decomprima fișierele care nu au octeții de antet magici corecti. Dacă este forțat (-f), totuși, va trece astfel de fișiere prin nemodificate. Acesta este modul în care se comportă GNU gzip.

-k --ţine Păstrați (nu ștergeți) fișierele de intrare în timpul compresiei sau decompresiei.
-s --mic

Reduceți utilizarea memoriei, pentru compresie, decompresie și testare. Fișierele sunt decomprimate și testate folosind un algoritm modificat care necesită doar 2,5 octeți per bloc octet. Aceasta înseamnă că orice fișier poate fi decomprimat în 2300k de memorie, deși la aproximativ jumătate din viteza normală.

În timpul compresiei, -s selectează o dimensiune a blocului de 200k, ceea ce limitează utilizarea memoriei la aproximativ aceeași cifră, în detrimentul raportului de compresie. Pe scurt, dacă aparatul dvs. are memorie redusă (8 megaocteți sau mai puțin), utilizați -s pentru orice. Vezi mai jos GESTIONAREA MEMORIEI.

-q --liniște Suprimați mesajele de avertizare neesențiale. Mesajele referitoare la erorile I/O și alte evenimente critice nu vor fi suprimate.
-v --verbos Verbos mod -- arată raportul de compresie pentru fiecare fișier procesat. În plus, -v mărește nivelul de verbozitate, aruncând o mulțime de informații care sunt de interes în primul rând în scopuri de diagnosticare.
-L --licență Afișați versiunea software, termenii și condițiile licenței.
-V --versiune
Afișați versiunea software, termenii și condițiile licenței.
-1 sau -9

Setați dimensiunea blocului la 100 k, 200 k.. 900 k la comprimare. Nu are efect la decomprimare.
--rapid (alias pentru -1) și --Cel mai bun (alias pentru -9) sunt în primul rând pentru compatibilitatea GNU gzip. În special, --rapid nu face lucrurile mult mai repede. Și --Cel mai bun selectează doar comportamentul implicit.

Tratează toate argumentele ulterioare ca nume de fișiere, chiar dacă încep cu o liniuță. Acest lucru este astfel încât să puteți gestiona fișiere cu nume care încep cu o liniuță, de exemplu: bzip2 -- -myfilename.

--repetitiv-rapid și --repetitiv-cel mai bun sunt redundante în versiunile 0.9.5 și mai sus. Ei au oferit un control grosier asupra comportamentului algoritmului de sortare în versiunile anterioare, ceea ce a fost uneori util. 0.9.5 și versiunile superioare au un algoritm îmbunătățit care face ca aceste steaguri irelevante.

Folosește man comandă (% om) pentru a vedea cum este utilizată o comandă pe computerul dvs.

Explorarea compresiei bunzip2

bzip2 comprimă fișierele folosind algoritmul Burrows-Wheeler de sortare a textului și codarea Huffman. Comprimare este în general considerabil mai bună decât cea obținută de compresoarele bazate pe LZ77/LZ78 mai convenționale și se apropie de performanța familiei PPM de compresoare statistice.

Opțiunile liniei de comandă sunt în mod deliberat foarte asemănătoare cu cele ale GNU gzip, dar nu sunt identice.

bzip2 se așteaptă ca o listă de nume de fișiere să însoțească steagurile liniei de comandă. Fiecare fișier este înlocuit cu o versiune comprimată a lui, cu numele „original_name.bz2”. Fiecare fișier comprimat are aceeași dată de modificare, permisiuni și, atunci când este posibil, aceeași proprietate ca originalul corespunzător, astfel încât aceste proprietăți să poată fi restaurate corect la momentul decompresiei.

Linux bunzip2

Când să utilizați steag-ul -f

Gestionarea numelor de fișiere este naivă în sensul că nu există niciun mecanism pentru păstrarea numelor de fișiere originale, a permisiunilor, proprietăți sau date în sistemele de fișiere cărora le lipsesc aceste concepte sau au restricții serioase de lungime a numelor de fișiere, cum ar fi MS-DOS.

bzip2 și bunzip2 implicit nu va suprascrie fișierele existente. Dacă doriți ca acest lucru să se întâmple, specificați -f steag.

Dacă nu sunt specificate nume de fișiere, bzip2 comprimă de la intrarea standard la ieșirea standard. În acest caz, bzip2 va refuza să scrie o ieșire comprimată pe un terminal, deoarece acest lucru ar fi complet de neînțeles și, prin urmare, inutil.

Linux bunzip2 mai multe fișiere

bunzip2 (sau bzip2 -d) decomprimă toate fișierele specificate. Fișierele care nu au fost create de bzip2 va fi detectat și ignorat și va fi emis un avertisment. bzip2 încearcă să ghicească numele fișierului pentru fișierul decomprimat din cel al fișierului comprimat, după cum urmează:

  • filename.bz2 devine filename
  • filename.bz devine filename
  • filename.tbz2 devine filename.tar
  • filename.tbz devine filename.tar
  • anyothername devine anyothername.out

Dacă fișierul nu se termină într-una dintre cele recunoscute extensii de fișiereBZ2, BZ, TBZ2 sau TBZbzip2 se plânge că nu poate ghici numele fișierului original și folosește numele original cu .out anexat.

Linux bunzip2 decomprima tarball

Ca și în cazul compresiei, nefurnizarea unui nume de fișier cauzează decompresia de la intrarea standard la ieșirea standard.

bunzip2 va decomprima corect un fișier care este concatenarea a două sau mai multe fișiere comprimate. Rezultatul este concatenarea fișierelor corespunzătoare necomprimate. Testare de integritate (-t) de fișiere comprimate concatenate este, de asemenea, acceptată.

Utilizarea steagului -c pentru ieșirea standard

De asemenea, puteți comprima sau decomprima fișierele la ieșirea standard dând -c steag. Mai multe fișiere pot fi comprimate și decomprimate astfel. Ieșirile rezultate sunt transmise secvenţial la stdout. Comprimarea mai multor fișiere în acest mod generează un flux care conține mai multe reprezentări de fișiere comprimate.

Un astfel de flux poate fi decomprimat corect numai prin bzip2versiunea 0.9.0 sau mai recentă. Versiunile anterioare ale bzip2 se va opri după decomprimarea primului fișier din flux.

bzip2 Decompresie

bzcat (sau bzip2 -dc) decomprimă toate fișierele specificate la ieșirea standard.

bzip2 va citi argumente din variabilele de mediu BZIP2 și BZIP, în această ordine și le va procesa înaintea oricăror argumente citite din linia de comandă. Aceasta oferă o modalitate convenabilă de a furniza argumente implicite.

Comprimarea este întotdeauna efectuată, chiar dacă fișierul comprimat este puțin mai mare decât originalul. Fișierele de mai puțin de aproximativ 100 de octeți tind să devină mai mari, deoarece mecanismul de compresie are o supraîncărcare constantă în regiunea de 50 de octeți. Datele aleatorii (inclusiv ieșirea majorității compresoarelor de fișiere) sunt codificate la aproximativ 8,05 biți pe octet, dând o extindere de aproximativ 0,5 la sută.

bzip2 și CRC-uri

Ca auto-verificare pentru protecția dvs., bzip2 folosește CRC-uri pe 32 de biți pentru a se asigura că versiunea decomprimată a unui fișier este identică cu cea originală. Acest lucru protejează împotriva coruperii datelor comprimate și împotriva erorilor nedetectate în bzip2 (sperăm că foarte puțin probabil).

Șansele ca corupția datelor să nu fie detectată sunt microscopice, aproximativ o șansă la patru miliarde pentru fiecare fișier procesat. Fiți conștienți, totuși, de faptul că verificarea are loc la decompresie, așa că vă poate spune doar că ceva nu este în regulă. Nu vă poate ajuta să recuperați datele originale necomprimate.

Poți să folosești bzip2recover pentru a încerca să recupereze datele din fișierele deteriorate.