Sve tajne kompresije u GNU / Linuxu

Kompresijske cijevi

Vraćamo se uobičajenom problemu koji mnogima postaje prednost napredni GNU / Linux korisnici i to je veliki broj alternativa ili dostupnih mogućnosti. Ovo za najneiskusnije može predstavljati problem kad ne znaju dobro koga odabrati, ali kao što kažem, imati više mogućnosti ili fleksibilnosti nikada nije loše, već upravo suprotno. U ovom slučaju ćemo razgovarati o algoritmi i postupci kompresije i dekompresije koji postoje na našoj omiljenoj platformi, tako da ih možete vidjeti drugačije, a ne kao veliku zbrku ne znajući koja je najbolja opcija u vašem slučaju ...

Istina je da ne postoje samo alati koji se koriste kao katran pomoću kojih možemo stvoriti pakete kojima se također može dodati neka vrsta kompresije kakvu smo navikli vidjeti u čuvene tarbale o kojima smo već govorili LxA u mnogim prilikama. Pronaći ćemo i varijante takvih trivijalnih i čestih alata kao što je grep za pretraživanje unutar komprimiranih datoteka kao što je bzfgrep ili čak i druge poput manje i više koje također imaju svoje varijante za komprimirane datoteke kao što su bzless i bzmore. Da bismo ih sve vidjeli, jednostavno moramo pogledati izlaz sljedeće naredbe:

apropos compress

Algoritmi i testovi:

Između svih algoritmi kompresija bez gubitaka dostupna u Linuxu za komprimiranje i dekompresiju podataka imamo puno mogućnosti. Da biste dobili dokaz vremena potrebno za komprimiranje s jednim ili drugim algoritmom kompresije ili koliko je vremena potrebno za njegovu dekompresiju, predlažem da sami napravite neke testove. Za to možete upotrijebiti vremensku naredbu koja će vam dati vrijeme potrebno za postupak kompresije i dekompresije. Na primjer, ako ćete koristiti zip alat za komprimiranje datoteke koja se zove test:

time zip prueba.zip prueba

To bi odbacilo utrošeno vrijeme, ali ako želite vidjeti veličina generirane datotekeMožete pokušati komprimirati istu datoteku različitim algoritmima i alatima za kompresiju, a nakon što sve komprimirane datoteke imate u direktorijumu pomoću jednostavne naredbe za popis, provjerite veličinu svake od njih:

ls -l

Ako želite, možete upotrijebiti i druge alate za usporedbu komprimiranih datoteka, na primjer s nekim varijantama alata diff:

xzdiff [opciones] fichero1 fichero2

lzdiff [opciones] fichero 1 fichero2

Ako želite vidjeti grafikone o veličini i brzini algoritama, možete posjetiti ovaj drugi link.

Alati za kompresiju:

Što se tiče raspoloživi alati imamo ih mnogo, neke s grafičkim sučeljem za početnike i jednostavno ćemo se morati nositi s jednostavnim i intuitivnim GUI-jem da bismo izvršili kompresije i dekompresije kao što je PeaZip ili 7zip, ... itd. Konkretno, prvi je sposoban za rad s različitim formatima, konkretno više od 180 njih. Ali ako ste jedan od onih koji i dalje voli raditi s terminalom, imat ćete velik broj alata koje zasigurno znate:

  • zip i raspakirajte: dobra je opcija ako su ono što želite datoteke koje su prenosive na druge operativne sisteme, jer ćete naći alate za rad s tim datotekama na sistemima Microsoft Windows, kao i na macOS-u, kao i na drugima. Na primjer, za komprimiranje datoteke ili direktorija nazvanog test i zatim dekompresiranje:
zip prueba.zip prueba

unzip prueba.zip

  • gzip: Najbolje je da ono što želite bude prenosivost jednostavno između Unix / Linux operativnih sistema. Možda je stopa kompresije gotovo identična zip, možda nešto bolja, ali nećete naći veliku razliku u veličini datoteke pod zip ili gzip. Za komprimiranje i dekompresiju pomoću ovog alata možemo koristiti dvije opcije u slučaju dekompresije, a one su opcija -do, izravno koristeći alias gunzip:
gzip prueba

gzip -d prueba.gz

gunzip prueba.gz

  • bzip2: Kao i prethodni, ovaj algoritam je vrlo prisutan u operativnim sistemima Unix / Linux, iako će trebati malo više vremena u procesima kompresije i dekompresije nego u slučaju gzip-a. U ovom slučaju, kašnjenje se neće pretvoriti u veću stopu kompresije kao u slučaju xz, jer će datoteke komprimirane pod bzip2 zauzimati malo više od gzip datoteka. Zbog toga je preporučljivo izbjegavati bzip2 i umjesto toga se odlučiti za xz ili gzip. Iako će sve malo ovisiti o vrsti datoteke koju pokušavate komprimirati ... Na primjer:
bzip2 prueba

bzip2 -d prueba.bz2

  • xz: To je preferirani format za velike veličine datoteka, jer nudi najbolje stope kompresije, ali istina je i da će trebati više vremena za dovršetak kompresije ili dekompresije. Prilično je noviji od prethodnih, tako da ćete se možda naći s primitivnijim distro-ovima ili starim Unix sistemima koji nemaju alat za ovaj. Primjeri:
xz prueba

xz -d prueba.xz

  • unrar i rar: Takođe možemo raditi s RAR formatima u Linuxu zahvaljujući ovim alatima, iako on nije toliko popularan u slučaju * nix sistema kao prethodni ... U ovom slučaju možemo birati:
rar a prueba.rar prueba

unrar e prueba.rar

  • komprimirati i dekomprimirati: i premda se upotreba obloga gubi i nije toliko popularna kao prethodne, ne bih volio zanemariti ni ovaj alat. Koristi se za komprimiranje datoteka s nastavkom .Z i to zahvaljujući modificiranom Lempel-Ziv algoritmu. Na primjer:
compress -v prueba

uncompress prueba.Z

Ako želite direktno raditi sa alat za katranTakođer možete istovremeno spakirati i komprimirati datoteke, kao i raspakirati ih i dekomprimirati. U ovom slučaju možemo opcije targeta algoritma koji će se koristiti izravno proslijediti taru. Ali prije svega trebali biste znati da s opcijom c kreiramo paket, a s opcijom x ga izdvajamo. Na primjer:

tar czvf prueba.tar.gz prueba

tar xzvf prueba.tar.gz

Kao što vidite, koristili smo mogućnosti zvf koji trebaju ukazati na tip algoritma kompresije z (u ovom slučaju gzip), v za opširni način rada koji daje informacije o tome što radi, i f za označavanje datoteke s kojom treba raditi ... Pa, ako to promijenimo z drugim slovom koje odgovara drugoj vrsti algoritma možemo promijeniti vrstu kompresije primijenjenu na tarball:

Opcija Algoritam Produžetak
z gzip .tar.gz
j bzip2 .tar.bz2
J xz .tar.xz
lzip zip .tar.lz
lzma lzma .tar.lzma

* Naravno da sve prethodne naredbe imaju zanimljive opcije koje vas pozivam da otkrijete koristeći man, neke vrlo potrebne poput rekurzije itd.

Ne zaboravite ostavite svoje komentare...


Ostavite komentar

Vaša e-mail adresa neće biti objavljena. Obavezna polja su označena sa *

*

*

  1. Odgovoran za podatke: AB Internet Networks 2008 SL
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.

  1.   Javier Martinez Echenique rekao je

    Posebno koristim 7zip

  2.   marcelo rekao je

    Propustili ste 7zip. Vrlo dobra opcija i BESPLATNI SOFTVER.

  3.   Umberto rekao je

    Izvrsne informacije, premda bih započeo rekavši da se i njih bez problema može grafički komprimirati i dekomprimirati kako ne biste vidjeli dežurnog "stršljena" koji kaže da je GNU / Linux vrlo težak i da se sve mora učiniti na konzola. NE, TO JE DRUGA OPCIJA.