Sa susunod na artikulo titingnan natin kung paano zip at i-unzip ang mga file gamit ang gzip at bzip2. Napaka-kapaki-pakinabang ang compression kapag nagba-back up ng mga mahahalagang file o nagpapadala ng malalaking mga file sa Internet. Ngayon maraming mga programa upang mai-compress at ma-decompress ang mga file sa GNU / Linux.
Sinabi sa amin ng isang kasamahan tungkol sa ilan sa mga ito mga programa tulad ng rar y sigla sa blog na ito Sa tutorial na ito, titingnan namin ang dalawa lamang sa kanila, tulad ng gzip at bzip2. Tulad ng sinabi ko, tingnan natin kung paano gamitin ang mga ito upang i-compress at decompress ang mga file na may ilang mga halimbawa sa Ubuntu.
I-compress at i-decompress ang mga file gamit ang gzip at bzip2
Ang programa ng gzip
Gzip ay isang utility upang mai-compress at ma-decompress ang mga file gamit ang Ang algorithm ng encoding ng Lempel-Ziv (LZ77).
-
I-compress ang mga file
Upang i-compress ang isang file na pinangalanang ubunlog.txt, pinapalitan ito ng isang naka-compress na bersyon, isasagawa namin sa terminal (Ctrl + Alt + T):
gzip ubunlog.txt
Papalitan ng Gzip ang orihinal na file tinatawag na ubunlog.txt ng isang naka-compress na bersyon na tinatawag ubunlog.txt.gz.
Maaari ding magamit ang utos na gzip sa ibang mga paraan. Ang isang mabuting halimbawa ay kaya natin lumikha ng isang naka-compress na bersyon ng output ng isang tukoy na utos. Tingnan ang sumusunod na utos.
ls -l ../../Descargas / | gzip > ubunlog.txt.gz
Ang utos sa itaas ay lumilikha ng isang naka-compress na bersyon ng listahan ng mga file sa folder na Mga Pag-download.
-
I-compress at i-decompress ang pagpapanatili ng orihinal na file
Bilang default, idi-compress ng gzip program ang ibinigay na file, pinapalitan ito ng isang naka-compress na bersyon. Gayunpaman, maaari naming panatilihin ang orihinal na file at isulat ang resulta sa karaniwang output. Halimbawa, ang sumusunod na command, compress ubunlog.txt at isulat ang resulta sa output.txt.gz.
gzip -c ubunlog.txt > salida.txt.gz
Sa parehong paraan, makakaya natin alisan ng zip ang isang naka-compress na file tinutukoy ang pangalan ng output file:
gzip -c -d salida.txt.gz > ubunlog1.txt
I-unzip ng command sa itaas ang output.txt.gz file at isusulat ang resulta sa file ubunlog1.txt. Sa dalawang nakaraang kaso, ang orihinal na file ay hindi matatanggal.
-
I-unzip ang mga file
Upang i-unzip ang file ubunlog.txt.gz, pinapalitan ito ng orihinal na hindi naka-compress na bersyon, gagamitin namin ang sumusunod na utos sa terminal (Ctrl + Alt + T):
gzip -d ubunlog.txt.gz
Maaari din kaming gumamit ng gunzip upang i-unzip ang mga file.
gunzip ubunlog.txt.gz
-
Tingnan ang mga nilalaman ng mga naka-compress na file nang hindi na-decompress ang mga ito
Upang matingnan ang mga nilalaman ng naka-compress na file nang hindi decompressing ito gamit ang gzip, gagamitin namin ang pagpipiliang -c tulad ng ipinapakita sa mga sumusunod:
gunzip -c ubunlog1.txt.gz
Maaari din nating gamitin ang zcat utility para sa parehong layunin, tulad ng sa ibaba:
zcat ubunlog.txt.gz
Kakayanin namin tubo ang output gamit ang "mas kaunti" na utos upang matingnan ang pahina ng output ayon sa pahina tulad ng ipinakita sa ibaba:
gunzip -c ubunlog.txt.gz | less
Ang mas kaunting utos ay maaari ding gamitin zcat:
zcat ubunlog.txt.gz | less
Magkakaroon din kami ng pagpipilian upang magamit ang walang programa. Gumagawa ito ng parehong pag-andar tulad ng nakaraang mga tubo:
zless ubunlog.txt.gz
Kami exit paging sa pamamagitan ng pagpindot sa q key.
-
I-compress ang file gamit ang gzip na tumutukoy sa antas ng compression
Ang isa pang kalamangan na dapat tandaan ng gzip ay iyon sumusuporta sa antas ng compression. Sinusuportahan ang 3 mga antas ng compression tulad ng sa ibaba.
1 - Mas mabilis (mas masahol pa)
9 - Mas Mabagal (mejor)
6 - Default na antas
Upang i-compress ang file na pinangalanan ubunlog.txt, pinapalitan ito ng a naka-compress na bersyon na may pinakamahusay na antas ng compression, gagamitin natin:
gzip -9 ubunlog.txt
-
Pagsamahin ang maramihang mga naka-compress na file
Ang isa pang posibilidad na inaalok sa amin ng gzip ay ang ng pagsamahin ang maramihang mga naka-compress na file sa isa. Magagawa natin ito sa sumusunod na paraan:
gzip -c ubunlog1.txt > salida.txt.gz gzip -c ubunlog2.txt >> salida.txt.gz
Ang dalawang utos sa itaas ay i-compress ubunlog1.txt at ubunlog2.txt at i-save ang mga ito sa isang file na tinatawag na output.txt.gz.
Maaari naming tingnan ang mga nilalaman ng mga file (ubunlog1 .txt at ubunlog1.txt) nang hindi kinukuha ang mga ito gamit ang alinman sa mga sumusunod na utos:
gunzip -c salida.txt.gz gunzip -c salida.txt zcat salida.txt.gz zcat salida.txt
Para sa karagdagang detalye tungkol sa gzip, tingnan ang pahina ng tao:
man gzip
Ang bzip2 na programa
El bzip2 ito ay halos kapareho sa gzip program. Ang pangunahing pagkakaiba ay gumagamit ito ng iba't ibang algorithm ng compression na tinawag Burrows-Wheeler block ang pag-uuri ng algorithm ng compression ng teksto at pag-encode ng Huffman. Ang mga file na naka-compress sa bzip2 ay magtatapos sa extension .bz2.
Tulad ng sinabi ko, ang paggamit ng bzip2 ay halos kapareho ng gzip. Kailangan lang namin palitan ang gzip sa mga halimbawa sa itaas ng bzip2, gunzip na may bunzip2, zcat na may bzcat at iba pa.
-
I-compress ang mga file
Upang i-compress ang isang file gamit ang bzip2, pinapalitan ito ng isang naka-compress na bersyon, isasagawa namin:
bzip2 ubunlog.txt
-
I-compress ang mga file nang hindi tinatanggal ang orihinal na file
Kung hindi namin nais na palitan ang orihinal na file, gagamitin namin ang -c pagpipilian at isusulat namin ang resulta sa isang bagong file.
bzip2 -c ubunlog.txt > salida.txt.bz2
-
I-unzip ang mga file
Sa i-unzip ang isang file naka-compress gagamitin namin ang isa sa mga sumusunod na dalawang posibilidad:
bzip2 -d ubunlog.txt.bz2 bunzip2 ubunlog.txt.bz2
-
Tingnan ang mga nilalaman ng mga naka-compress na file nang hindi na-decompress ang mga ito
Upang makita ang nilalaman ng isang naka-compress na file nang hindi na-decompress ito, gagamitin lamang namin ang anuman sa mga pagpipilian:
bunzip2 -c ubunlog.txt.bz2 bzcat ubunlog.txt.bz2
Para sa karagdagang detalye, maaari kaming kumunsulta sa pahina ng tao:
man bzip2