Mengompresi cukup berguna saat membuat cadangan file penting dan juga mengirim file besar melalui Internet. Dalam tutorial ini, kita akan membahas cara mengompres dan mendekompresi file di Linux menggunakan dua program baris perintah yaitu gzip dan bzip2 .
Catatan:
Mengompresi file yang sudah dikompresi menambah overhead ekstra, maka Anda akan mendapatkan file yang sedikit lebih besar. Jadi, berhenti mengompresi file terkompresi.
Kompres dan dekompresi file di Linux
Seperti yang sudah disebutkan, program yang paling umum digunakan untuk mengompresi file di Linux dan sistem mirip Unix adalah:
- gzip
- bzip2
Pertama, kita akan melihat penggunaan Gzip.
1. Kompres dan dekompresi file menggunakan program Gzip
Gzip adalah utilitas untuk mengompresi dan mendekompresi file menggunakan algoritma pengkodean Lempel-Ziv (LZ77).
1.1 Kompres file
Untuk mengompresi file bernama ostechnix.txt , menggantinya dengan versi terkompresi gzip, jalankan:
$ gzip ostechnix.txt
Gzip akan menggantikan file asli ostechnix.txt dengan versi terkompresi gzip bernama ostechnix.txt.gz .
Perintah gzip juga dapat digunakan dengan cara lain. Salah satu contoh bagus adalah kita dapat membuat versi terkompresi dari output perintah tertentu. Lihat perintah berikut.
$ ls -l Downloads/ | gzip > ostechnix.txt.gz
Perintah di atas membuat versi terkompresi dari daftar direktori folder Downloads.
1.2 Kompres file dan tulis output ke file yang berbeda (Jangan ganti file asli)
Secara default, program gzip akan mengompresi file yang diberikan, menggantinya dengan versi terkompresi gzip. Namun, Anda dapat menyimpan file asli dan menulis output ke output standar. Misalnya, perintah berikut, kompres ostechnix.txt dan menulis output ke output.txt.gz .
$ gzip -c ostechnix.txt > output.txt.gz
Demikian pula, untuk mendekompresi file gzip yang menentukan nama file keluaran:
$ gzip -c -d output.txt.gz > ostechnix1.txt
Perintah di atas mendekompresi output.txt.gz file dan menulis output ke ostechnix1.txt mengajukan. Dalam kedua kasus, itu tidak akan menghapus file asli.
1.3 Dekompresi file
Untuk mendekompresi file ostechnix.txt.gz , menggantinya dengan versi asli yang tidak terkompresi, kami melakukan:
$ gzip -d ostechnix.txt.gz
Kami juga dapat menggunakan gunzip untuk mendekompresi file.
$ gunzip ostechnix.txt.gz
1.4 Melihat konten file terkompresi tanpa mendekompresinya
Untuk melihat konten file terkompresi menggunakan gzip tanpa mendekompresinya, gunakan -c bendera seperti gambar di bawah ini:
$ gunzip -c ostechnix1.txt.gz
Atau, gunakan zcat utilitas seperti di bawah ini.
$ zcat ostechnix.txt.gz
Anda juga dapat menyalurkan output ke perintah "less" untuk melihat halaman output demi halaman seperti di bawah ini.
$ gunzip -c ostechnix1.txt.gz | less
$ zcat ostechnix.txt.gz | less
Atau, ada zless program yang menjalankan fungsi yang sama seperti pipeline di atas.
$ zless ostechnix1.txt.gz
1.5 Kompres file dengan gzip dengan menentukan tingkat kompresi
Keuntungan penting lainnya dari gzip adalah mendukung tingkat kompresi. Mendukung 3 tingkat kompresi seperti yang diberikan di bawah ini.
- 1 - Tercepat (Terburuk)
- 9 - Paling lambat (Terbaik)
- 6 - Tingkat default
Untuk mengompresi file bernama ostechnix.txt , menggantinya dengan versi terkompresi gzip dengan terbaik tingkat kompresi, kami menggunakan:
$ gzip -9 ostechnix.txt
1.6 Menggabungkan beberapa file terkompresi
Dimungkinkan juga untuk menggabungkan beberapa file terkompresi menjadi satu. Bagaimana? Lihat contoh berikut.
$ gzip -c ostechnix1.txt > output.txt.gz
$ gzip -c ostechnix2.txt >> output.txt.gz
Kedua perintah di atas akan mengompres ostechnix1.txt dan ostechnix2.txt dan menyimpannya dalam satu file bernama output.txt.gz .
Anda dapat melihat konten kedua file (ostechnix1.txt dan ostechnix2.txt) tanpa mengekstraknya menggunakan salah satu dari perintah berikut:
$ gunzip -c output.txt.gz
$ gunzip -c output.txt
$ zcat output.txt.gz
$ zcat output.txt
Untuk detail lebih lanjut, lihat halaman manual.
$ man gzip
2. Kompres dan dekompresi file menggunakan program bzip2
bzip2 sangat mirip dengan program gzip, tetapi menggunakan algoritma kompresi yang berbeda bernama algoritma kompresi teks pengurutan blok Burrows-Wheeler, dan pengkodean Huffman. File yang dikompres menggunakan bzip2 akan diakhiri dengan .bz2 ekstensi.
Seperti yang saya katakan, penggunaan bzip2 hampir sama dengan gzip. Cukup ganti gzip dalam contoh di atas dengan bzip2 , zip gun dengan bunzip2 , zcat dengan bzcat dan seterusnya.
Untuk mengompresi file menggunakan bzip2, menggantinya dengan versi terkompresi, jalankan:
$ bzip2 ostechnix.txt
Jika Anda tidak ingin mengganti file asli, gunakan -c tandai dan tulis hasilnya ke file baru.
$ bzip2 -c ostechnix.txt > output.txt.bz2
Untuk mendekompresi file terkompresi:
$ bzip2 -d ostechnix.txt.bz2
Atau,
$ bunzip2 ostechnix.txt.bz2
Untuk melihat konten file terkompresi tanpa mendekompresinya:
$ bunzip2 -c ostechnix.txt.bz2
Atau,
$ bzcat ostechnix.txt.bz2
Untuk detail lebih lanjut, lihat halaman manual.
$ man bzip2
Bacaan yang disarankan:
- Pigz - Kompres Dan Dekompresi File Secara Paralel Di Linux
Ringkasan
Dalam tutorial ini, kita mempelajari apa itu program gzip dan bzip2 dan bagaimana menggunakannya untuk mengompresi dan mendekompresi file dengan beberapa contoh di GNU/Linux. Dalam panduan berikutnya, kita akan mempelajari cara mengarsipkan file dan direktori di Linux .