Perintah tar
memungkinkan Anda untuk membuat dan mengekstrak arsip dengan format tar. Perintah ini juga mendukung berbagai program kompresi seperti gzip, bzip2, lzip, lzma, lzop, xz dan compress.
Bzip2 adalah salah satu algoritma paling populer untuk mengompresi file tar. Secara penamaan, jika arsip tar dikompresi dengan bzip2, maka nama dari file akan diakhiri dengan .tar.bz2
atau .tbz2.
Dalam tutorial ini, kami akan menjelaskan cara mengekstrak (atau unzip) tar.bz2 dan arsip tbz2 menggunakan perintah tar
.
Cara ekstrak File tar.bz2
Sebagian besar distribusi Linux dan macOS dilengkapi dengan utilitas tar yang sudah diinstal secara default.
Untuk mengekstrak file tar.bz2, gunakan opsi --extract
(-x
) dan tentukan nama file arsip setelah opsi -f
:
tar -jf archive.tar.bz2
Perintah tar
secara otomatis mendeteksi tipe kompresi dan mengekstrak arsip. Perintah yang sama dapat digunakan untuk mengekstrak arsip tar yang dikompres dengan algoritma lain seperti .tar.gz.
Jika Anda adalah pengguna Desktop dan masih takut menggunakan terminal / baris perintah, Anda dapat menggunakan file Manajer Anda. Untuk mengekstrak (unzip) file tar.bz2 cukup klik kanan file yang ingin Anda ekstrak dan pilih “Extract”. Pengguna Windows akan membutuhkan tool bernama 7zip untuk mengekstrak file tar.bz2.
Untuk lebih banyak output verbose gunakan opsi -v
. Opsi ini memberi tahu tar
untuk menampilkan nama file yang sedang diekstraksi di terminal.
tar -xvf archive.tar.bz2
Secara default, tar akan mengekstraksi konten arsip di direktori kerja saat ini. Gunakan --directory
(-C
) untuk mengekstrak file arsip di direktori tertentu:
Misalnya, untuk mengekstrak isi arsip ke direktori /home/budi/files
, Anda harus mengetik:
tar -jf archive.tar.bz2 -C /home/budi/files
Ekstrak File Tertentu dari File tar.bz2
Untuk mengekstrak file tertentu dari file tar.bz2, tambahkan daftar nama file yang dipisahkan. Misal kita ingin extrak foto001.jpg
dan foto002.jpg
tar -jf archive.tar.bz2 foto001.jpg foto002.jpg
Saat mengekstraksi file, Anda harus memberikan nama secara tepat, termasuk path, seperti yang dicetak ketika opsi --list
(-t
) digunakan.
Mengekstrak satu atau lebih direktori dari arsip sama dengan mengekstraksi banyak file
tar -jf archive.tar.bz2 dir1 dir2
Jika Anda mencoba mengekstrak file yang tidak ada dalam arsip, pesan kesalahan yang mirip dengan yang berikut ini akan ditampilkan:
tar -jf archive.tar.bz2 PHOTOMANTAN.jpeg tar: PHOTOMANTAN.jpeg : Not found in archive tar: Exiting with failure status due to previous errors
Opsi --wildcards
memungkinkan Anda untuk mengekstrak file dari file tar.bz2 berdasarkan pola wildcard. Polanya harus dikutip untuk mencegah shell mengartikannya secara berbeda.
Misalnya, untuk mengekstrak hanya file yang namanya berakhiran .jpg
(file gambar), Anda akan menggunakan:
tar -jf archive.tar.bz2 --wildcards '*.jpg'
Mengekstrak file tar.bz2 dari stdin
Saat mengekstrak file tar.bz2 terkompresi dengan membaca arsip dari input standar (biasanya melalui pemipaan), Anda harus menentukan opsi dekompresi. Opsi -j
akan memberitahu tar
bahwa file dikompres dengan bzip2.
Pada contoh di bawah ini, kita akan mengunduh sources app Vim menggunakan perintah wget
dan mengirimkan hasilnya ke perintah tar
:
wget -c ftp://ftp.vim.org/pub/vim/unix/vim-8.1.tar.bz2 -O - | sudo tar -xj
Jika Anda tidak menentukan opsi untuk dekompresi, tar
akan menunjukkan kepada Anda opsi mana yang harus Anda gunakan:
tar: Archive is compressed. Use -j option tar: Error is not recoverable: exiting now
Membuat List file tar.bz2
Untuk membuat daftar konten file tar.bz2, gunakan opsi --list
(-t
):
tar -tf archive.tar.bz2
Outputnya akan terlihat seperti ini:
file1 file2 file3
Jika Anda menambahkan opsi --verbose
(-v
), tar akan mencetak informasi lebih banyak, seperti pemilik, ukuran file, timestamp, dll :
tar -tvf archive.tar.bz2
-rw-r--r-- linuxid/users 0 2019-10-15 01:29 file1 -rw-r--r-- linuxid/users 0 2019-10-15 01:29 file2 -rw-r--r-- linuxid/users 0 2019-10-15 01:29 file3
Kesimpulan
File tar.bz2 adalah arsip Tar yang dikompres dengan Bzip2. Untuk mengekstrak file tar.bz2, gunakan perintah tar -jf diikuti dengan nama arsip.