Toate secretele compresiei în GNU / Linux

Conducte de compresie

Revenim la problema obișnuită care devine un avantaj pentru mulți utilizatori avansați GNU / Linux și este numărul mare de alternative sau posibilități disponibile. Acest lucru pentru cei mai neexperimentați poate fi o problemă atunci când nu știi bine pe cine să alegi, dar, așa cum spun, să ai mai multe posibilități sau flexibilitate nu este niciodată un lucru rău, ci dimpotrivă. În acest caz vom vorbi despre algoritmi și proceduri de compresie și decompresie care există pe platforma noastră preferată, astfel încât să le puteți vedea diferit și nu ca o mare mizerie, neștiind care este cea mai bună opțiune în cazul dvs. ...

Adevărul este că nu există doar instrumente folosite ca tar cu care putem crea pachete cărora li se poate adăuga și un fel de compresie așa cum suntem obișnuiți să vedem în celebrele tarballs despre care am vorbit deja în LxA în multe ocazii. Vom găsi, de asemenea, variante ale unor astfel de instrumente banale și frecvente, cum ar fi grep pentru a căuta în fișiere comprimate, cum ar fi bzfgrep, sau chiar altele, cum ar fi din ce în ce mai multe, care au și variantele lor pentru fișiere comprimate, cum ar fi bzless și bzmore. Pentru a le vedea pe toate trebuie doar să aruncăm o privire asupra rezultatului următoarei comenzi:

apropos compress

Algoritmi și teste:

Printre toate algoritmi compresie fără pierderi disponibilă în Linux pentru comprimarea și decomprimarea datelor avem o mulțime de opțiuni. Pentru a obține dovada timpului de comprimare cu unul sau alt algoritm de compresie sau a duratei decomprimării, vă sugerez să faceți singur câteva teste. Puteți utiliza comanda timp pentru aceasta, care vă va oferi timpul necesar pentru procesul de compresie și decompresie. De exemplu, dacă utilizați instrumentul zip pentru a comprima un fișier numit test:

time zip prueba.zip prueba

Asta ar arunca timpul folosit, dar dacă vreți să vedeți dimensiunea fișierului generatPuteți încerca să comprimați același fișier cu algoritmi și instrumente de compresie diferite și odată ce aveți toate fișierele comprimate într-un director cu o comandă simplă de listat, verificați dimensiunea fiecăruia:

ls -l

Dacă preferați, puteți utiliza și alte instrumente pentru a compara fișierele comprimate, de exemplu cu unele variante ale instrumentului diff:

xzdiff [opciones] fichero1 fichero2

lzdiff [opciones] fichero 1 fichero2

Dacă doriți să vedeți grafice cu privire la dimensiunea și viteza algoritmilor, puteți vizita acest alt link.

Instrumente de compresie:

Cu privire la instrumentele disponibile avem multe dintre ele, unele cu o interfață grafică pentru începători și că va trebui pur și simplu să avem de-a face cu o interfață grafică simplă și intuitivă pentru a efectua compresiile și decompresiile precum PeaZip sau 7zip, etc. Mai exact, primul este capabil să lucreze cu diverse formate, în special peste 180 dintre ele. Dar dacă sunteți unul dintre cei cărora încă le place să lucreze cu terminalul, atunci veți avea un număr mare de instrumente pe care le cunoașteți cu siguranță:

  • zip și dezarhivați: este o opțiune bună dacă ceea ce doriți sunt fișiere care sunt portabile pentru alte sisteme de operare, deoarece veți găsi instrumente pentru a lucra cu aceste fișiere pe sistemele Microsoft Windows și, de asemenea, pe macOS, precum și altele. De exemplu, pentru a comprima un fișier sau director numit test și apoi decomprimați-l:
zip prueba.zip prueba

unzip prueba.zip

  • gzip: Este cel mai bun dacă ceea ce doriți este portabilitatea pur și simplu între sistemele de operare Unix / Linux. Poate că rata de compresie este aproape identică cu zip, poate puțin mai bună, dar nu veți găsi prea multe diferențe în dimensiunea fișierului sub zip sau gzip. Pentru a comprima și decomprima cu acest instrument putem folosi două opțiuni în cazul decompresiei și acestea sunt opțiunea -do, folosind direct alias gunzip:
gzip prueba

gzip -d prueba.gz

gunzip prueba.gz

  • bzip2: Ca și precedentul, acest algoritm este foarte prezent în sistemele de operare Unix / Linux, deși va dura puțin mai mult în procesele de compresie și decompresie decât în ​​cazul gzip. În acest caz, întârzierea nu se va traduce într-o rată de compresie mai mare ca în cazul xz, deoarece fișierele comprimate sub bzip2 vor ocupa puțin mai mult decât fișierele gzip. De aceea este recomandat să evitați bzip2 și să optați pentru xz sau gzip. Deși totul va depinde puțin de tipul de fișier pe care încercați să îl comprimați ... De exemplu:
bzip2 prueba

bzip2 -d prueba.bz2

  • xz: Este formatul preferat pentru dimensiuni mari de fișiere, deoarece oferă cele mai bune rate de compresie, dar este, de asemenea, adevărat că va dura mai mult timp pentru a finaliza o compresie sau decompresie. Este destul de nou decât cele anterioare, deci s-ar putea să vă regăsiți cu distribuții mai primitive sau sisteme vechi Unix care nu au un instrument pentru acesta. Exemple:
xz prueba

xz -d prueba.xz

  • unrar și rar: Putem lucra și cu formate RAR în Linux datorită acestor instrumente, deși nu este la fel de popular în cazul sistemelor * nix ca și cele anterioare ... În acest caz putem alege:
rar a prueba.rar prueba

unrar e prueba.rar

  • comprimați și decomprimați: și, deși utilizarea compresei se pierde și nu este la fel de populară ca cele precedente, nici nu aș vrea să trec cu vederea acest instrument. Este folosit pentru a comprima fișiere cu o extensie .Z și face acest lucru datorită unui algoritm Lempel-Ziv modificat. De exemplu:
compress -v prueba

uncompress prueba.Z

Dacă doriți să lucrați direct cu instrumentul pentru gudronDe asemenea, puteți împacheta și comprima fișierele în același timp, precum și despacheta și decomprima. În acest caz, putem trece opțiunile tipului de algoritm de utilizat direct la tar. Dar mai întâi de toate trebuie să știți că cu opțiunea c creăm un pachet și cu opțiunea x îl extragem. De exemplu:

tar czvf prueba.tar.gz prueba

tar xzvf prueba.tar.gz

După cum puteți vedea, am folosit opțiunile zvf care trebuie să indice tipul algoritmului de compresie z (în acest caz gzip), v pentru modul detaliat care oferă informații despre ceea ce face și f pentru a indica fișierul cu care să lucreze ... Ei bine, dacă schimbăm asta z printr-o altă literă corespunzătoare unui alt tip de algoritm putem modifica tipul de compresie aplicat tarballului:

Opțiune algoritmul extensie
z gzip .tar.gz
j bzip2 .tar.bz2
J xz .tar.xz
lzip zip .tar.lz
lzma lzma .tar.lzma

* Desigur, toate comenzile anterioare au opțiuni interesante pe care vă invit să le descoperiți folosind omul, unele foarte necesare, cum ar fi recursivitatea etc.

Nu uita lasă comentariile tale...


Lasă comentariul tău

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

*

*

  1. Responsabil pentru date: AB Internet Networks 2008 SL
  2. Scopul datelor: Control SPAM, gestionarea comentariilor.
  3. Legitimare: consimțământul dvs.
  4. Comunicarea datelor: datele nu vor fi comunicate terților decât prin obligație legală.
  5. Stocarea datelor: bază de date găzduită de Occentus Networks (UE)
  6. Drepturi: în orice moment vă puteți limita, recupera și șterge informațiile.

  1.   Javier Martinez Echenique el a spus

    Folosesc în special 7zip

  2.   Marcelo el a spus

    Ți-a fost dor de 7zip. O opțiune foarte bună și SOFTWARE GRATUIT.

  3.   Umberto el a spus

    Informații excelente, deși aș fi început începând prin a spune că poate fi și comprimată și decomprimată grafic fără nicio problemă, astfel încât să nu vedeți „hornet-ul” de serviciu care spune că GNU / Linux este foarte dificil și că trebuie să faceți totul pe consola. NU, ESTE O ALTĂ OPȚIUNE.