În articolul următor vom analiza cum zip și dezarhivați fișierele folosind gzip și bzip2. Compresia este foarte utilă atunci când faceți backup pentru fișiere importante sau trimiteți fișiere mari pe Internet. Astăzi există multe programe pentru comprimarea și decomprimarea fișierelor în GNU / Linux.
Un coleg ne-a povestit deja despre unele dintre acestea programe precum rar y zip în acest blog. În acest tutorial, vom analiza doar două dintre ele, cum ar fi gzip și bzip2. După cum spun, să vedem cum să le folosim pentru a comprima și decomprima fișiere cu câteva exemple în Ubuntu.
Comprimați și decomprimați fișierele folosind gzip și bzip2
Programul gzip
gzip este un utilitar pentru comprimarea și decomprimarea fișierelor folosind Algoritm de codificare Lempel-Ziv (LZ77).
-
Compresează fișierele
Pentru a comprima un fișier numit ubunlog.TXT, înlocuindu-l cu o versiune comprimată, vom executa în terminal (Ctrl + Alt + T):
gzip ubunlog.txt
Gzip va înlocui fișierul original denumit ubunlog.txt printr-o versiune comprimată numită ubunlog.txt.gz.
Comanda gzip poate fi folosită și în alte moduri. Un bun exemplu este că putem creați o versiune comprimată a ieșirii unei anumite comenzi. Uită-te la următoarea comandă.
ls -l ../../Descargas / | gzip > ubunlog.txt.gz
Comanda de mai sus creează o versiune comprimată a listei de fișiere din folderul Descărcări.
-
Comprimă și decomprimă păstrând fișierul original
În mod implicit, programul gzip se va comprima fișierul dat, înlocuindu-l cu o versiune comprimată. Cu toate acestea, putem păstra fișierul original și scrie rezultatul în ieșirea standard. De exemplu, următoarea comandă, compress ubunlog.txt și scrieți rezultatul în output.txt.gz.
gzip -c ubunlog.txt > salida.txt.gz
La fel, putem dezarhivați un fișier comprimat specificând numele fișierului de ieșire:
gzip -c -d salida.txt.gz > ubunlog1.txt
Comanda de mai sus dezarhivează fișierul output.txt.gz și scrie rezultatul în fișier ubunlog1.txt. În cele două cazuri anterioare, fișierul original nu va fi șters.
-
Decuplați fișierele
Pentru a dezarhiva fișierul ubunlog.txt.gz, înlocuindu-l cu versiunea originală necomprimată, vom folosi următoarea comandă în terminal (Ctrl + Alt + T):
gzip -d ubunlog.txt.gz
Putem folosi și gunzip pentru a dezarhiva fișierele.
gunzip ubunlog.txt.gz
-
Vizualizați conținutul fișierelor comprimate fără a le decomprima
Pentru a vizualiza conținutul fișierului comprimat fără a-l decomprima folosind gzip, vom folosi opțiunea -c așa cum se arată în următoarele:
gunzip -c ubunlog1.txt.gz
Putem folosi și utilitar zcat în același scop, ca mai jos:
zcat ubunlog.txt.gz
Vom fi capabili conductează ieșirea folosind comanda „mai puțin” pentru a vizualiza pagina cu pagină, după cum se arată mai jos:
gunzip -c ubunlog.txt.gz | less
Comanda mai puțin poate fi, de asemenea, utilizată cu zcat:
zcat ubunlog.txt.gz | less
De asemenea, vom avea opțiunea de a utiliza fișierul program zless. Aceasta îndeplinește aceeași funcție ca și conductele anterioare:
zless ubunlog.txt.gz
Putem ieșiți din paginare apăsând tasta q.
-
Comprimă fișierul cu gzip specificând nivelul de compresie
Un alt avantaj pe care trebuie să-l țineți cont de gzip este că acceptă nivelul de compresie. Suportă 3 niveluri de compresie ca mai jos.
1 - Mai rapid (cel mai rău)
9 - Mai lent (mejor)
6 - Nivel implicit
Pentru a comprima fișierul numit ubunlog.txt, înlocuindu-l cu a versiune comprimată cu cel mai bun nivel de compresie, noi vom folosi:
gzip -9 ubunlog.txt
-
Concatenează mai multe fișiere comprimate
O altă posibilitate pe care ne-o oferă gzip este cea a concatenează mai multe fișiere comprimate într-unul. Putem face acest lucru în felul următor:
gzip -c ubunlog1.txt > salida.txt.gz gzip -c ubunlog2.txt >> salida.txt.gz
Cele două comenzi de mai sus se vor comprima ubunlog1.txt și ubunlog2.txt și salvați-le într-un singur fișier numit output.txt.gz.
Putem vizualizați conținutul fișierelor (ubunlog1 .txt și ubunlog1.txt) fără a le extrage folosind oricare dintre următoarele comenzi:
gunzip -c salida.txt.gz gunzip -c salida.txt zcat salida.txt.gz zcat salida.txt
Pentru mai multe detalii despre gzip, consultați pagini de om:
man gzip
Programul bzip2
El bzip2 este foarte asemănător cu programul gzip. Principala diferență este că folosește un alt algoritm de compresie numit Algoritmul de compresie a textului de clasificare a blocurilor Burrows-Wheeler și codificarea Huffman. Fișierele comprimate cu bzip2 se vor termina cu extensia .bz2.
Așa cum am spus, utilizarea bzip2 este aproape la fel ca gzip. Pur și simplu va trebui înlocuiți gzip în exemplele de mai sus cu bzip2, gunzip cu bunzip2, zcat cu bzcat și așa mai departe.
-
Compresează fișierele
Pentru a comprima un fișier folosind bzip2, înlocuindu-l cu o versiune comprimată, vom executa:
bzip2 ubunlog.txt
-
Comprimați fișierele fără a șterge fișierul original
Dacă nu dorim să înlocuim fișierul original, vom folosi fișierul -c opțiune și vom scrie rezultatul într-un fișier nou.
bzip2 -c ubunlog.txt > salida.txt.bz2
-
Decuplați fișierele
la decuplați un fișier comprimat vom folosi una dintre următoarele două posibilități:
bzip2 -d ubunlog.txt.bz2 bunzip2 ubunlog.txt.bz2
-
Vizualizați conținutul fișierelor comprimate fără a le decomprima
Pentru a vedea conținutul unui fișier comprimat fără a-l decomprima, va trebui să folosim doar oricare dintre opțiuni:
bunzip2 -c ubunlog.txt.bz2 bzcat ubunlog.txt.bz2
Pentru mai multe detalii, putem consulta pagini de om:
man bzip2