Skip to main content

Bruk 'bzip2' til å komprimere Linux-filer

Slik bruker du kart og kompass (Juni 2026)

Slik bruker du kart og kompass (Juni 2026)
Anonim

Den eneste tingen du alle vet om Linux er at det er mye variasjon. Det er hundrevis av Linux-distribusjoner, med dusinvis av skrivebordsmiljøer, flere kontorsuiter, grafikkpakker og lydpakker.

Et annet område der Linux gir variasjon, er når det gjelder å komprimere filer.

Windows-brukere vil allerede vite hva en zip-fil er, og derfor vil kommandoene "zip" og "unzip" bli brukt til å komprimere og dekomprimere filer i "zip" -formatet.

En annen metode for å komprimere filer er å bruke kommandoen "gzip" og å dekomprimere en fil med en "gz" -utvidelse du kan bruke kommandoen "gunzip".

I denne guiden vil jeg vise deg en annen komprimeringskommando kalt "bzip2."

Hvorfor bruk 'bzip2' Over 'gzip'?

Kommandoen "gzip" bruker LZ77-komprimeringsmetoden. Komprimeringsverktøyet "bzip2" bruker "Burrows-Wheeler" -algoritmen.

Så hvilken metode skal du bruke til å komprimere en fil?

Testen kjører hver kommando ved hjelp av standardkomprimeringsinnstillingene, og du vil se at kommandoen "bzip2" kommer ut på toppen når det gjelder å redusere filstørrelsen.

Men hvis du ser på tiden det tar å komprimere filen, tar det mye lenger tid å gjøre det.

Det er verdt å peke ut den tredje kolonnen på diagrammet som er merket "lzmash". Dette svarer til å kjøre "gzip" -kommandoen med kompresjonsnivået satt til "-9" eller for å sette det på engelsk, "mest komprimert".

Kommandoen "lzmash" tar lengre tid enn "gzip" -kommandoen som standard, men filen er redusert betydelig og den er mindre enn "bzip2" -kvivalenten. Det er også verdt å merke seg at det tar mindre tid å gjøre det.

Din beslutning vil derfor være hvor mye du ønsker å komprimere filene av og hvor lenge du er villig til å vente på at det skal skje.

Uansett er kommandoen "gzip" litt bedre i begge tilfeller.

Komprimere filer ved hjelp av 'bzip2'

For å komprimere en fil ved hjelp av "bzip2" -formatet, kjør følgende kommando:

bzip2 filnavn

Filen vil bli komprimert og vil nå ha utvidelsen ".bz2"

"Bzip2" vil alltid prøve og komprimere filen selv om filen blir større som et resultat. Dette kan skje når du komprimerer en fil som allerede er komprimert.

Hvis du prøver å komprimere en fil som vil resultere i filen med samme navn som en eksisterende komprimert fil, vil det oppstå en feil.

Hvis du for eksempel har en filtype, kalt "file1", og mappen allerede har en fil som heter "file1.bz2", da du kjører "bzip" -kommandoen, vil du se følgende utgang:

bzip2: Utdatafil filen1.bz2 eksisterer allerede

Slik dekomprimerer du filer

Det er mange forskjellige måter å dekomprimere filer som har utvidelsen "bz2".

Du kan bruke kommandoen "bzip2" som følger:

bzip2 -d filnavn.bz2

Dette vil dekomprimere filen og fjerne utvidelsen "bz2".

Hvis du dekomprimerer filen, vil det føre til at en fil med samme navn som overskrives, vil du se følgende feil:

bzip2: Utgang fil filnavn eksisterer allerede

En finere måte å dekomprimere filer med "bz2" -utvidelsen er å bruke kommandoen "bunzip2". Med denne kommandoen trenger du ikke å spesifisere noen brytere som vist nedenfor:

bunzip2 filnavn.bz2

Kommandoen "bunzip2" kjører nøyaktig på samme måte som kommandoen "bzip2" med minus d (-d) bryteren.

Kommandoen "bunzip2" kan trekke ut en gyldig fil som har blitt komprimert med "bzip" eller "bzip2". I tillegg til dekomprimering av vanlige filer kan den også dekomprimere tjærefiler som har blitt komprimert ved hjelp av kommandoen "bzip2".

Som standard tar filer som er komprimert med kommandoen "bzip2", utvidelsen ".tbz2". Når du dekomprimerer denne filen ved hjelp av kommandoen "bunzip2" blir filnavnet "filnavn.tar".

Hvis du har en gyldig fil som er komprimert med "bzip2", men den har en annen utvidelse enn "bzip2", dekomprimeres filen, men den vil legge til ".out" -utvidelsen til slutten av filen. For eksempel vil "myfile.myf" bli "myfile.out."

Slik tvinger du filer til å bli komprimert

Hvis du vil at kommandoen "bzip2" skal komprimere en fil uansett om en fil med "bz2" -utvidelsen allerede eksisterer, kan du bruke følgende kommando:

bzip2 -f myfile

Hvis du har en fil som heter "myfile" og en annen som heter "myfile.bz2", blir filen "myfile.bz2" overskrevet når "myfile" er komprimert.

Hvordan beholde begge filer

Hvis du vil beholde filen du komprimerer og den komprimerte filen, kan du bruke følgende kommando:

bzip2 -k myfile

Dette vil holde "myfile" filen, men vil også komprimere den og lage en "myfile.bz2" -fil.

Du kan også bruke minus k (-k) bryteren med kommandoen "bunzip2" for å holde både komprimert fil og ukomprimert fil mens du dekomprimerer filen.

Test gyldigheten av en "bz2" -fil

Du kan teste om en fil er komprimert med "bzip2" komprimeringsmekanismen ved hjelp av følgende kommando:

bzip2 -t filnavn.bz2

Hvis filen er en gyldig fil, vil ingen retur bli returnert, men hvis filen ikke er gyldig, vil du motta en melding som sier det.

Bruk mindre minne når du komprimerer filer

Hvis kommandoen "bzip2" bruker for mange ressurser mens du komprimerer en fil, kan du redusere effekten ved å spesifisere minus s (-s) bryteren som følger:

bzip2-s filnavn.bz2

Merk at det tar lengre tid å komprimere en fil ved hjelp av denne bryteren.

Få mer informasjon når du komprimerer filer

Som standard når du kjører kommandoene "bzip2" eller "bunzip2", mottar du ingen utdata, og den nye filen vises bare.

Hvis du vil vite hva som skjer når du komprimerer eller dekomprimerer en fil, kan du få mer verbose utdata ved å spesifisere minus v (-v) bryteren som følger:

bzip2 -v filnavn

Utgangen vises som følger:

filnavn: 1.172: 1 6.872 bits / byte 14.66% lagret 50341 i 42961 ut

De viktige delene er prosentvis lagret, inngangsstørrelse og utgangsstørrelse.

Gjenopprett ødelagte filer

Hvis du har en ødelagt "bz2" -fil, så er programmet som skal brukes til å prøve å gjenopprette dataene som følger:

bzip2recover filnavn.bz2