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.
Xz adalah algoritma yang populer untuk mengompresi file berdasarkan algoritma LZMA. Secara konvensi, nama arsip tar dikompresi dengan xz diakhiri dengan .tar.xz atau .txz.
Dalam tutorial ini, kami akan menjelaskan cara mengekstrak (atau unzip) .tar.xz dan arsip .txz .
Cara ekstrak File tar.xz
Sebagian besar distribusi Linux dan macOS dilengkapi dengan utilitas tar yang sudah diinstal secara default.
Untuk mengekstrak file tar.xz, Gunakan perintah tar
dengan opsi --extract
(-x
) dan tentukan nama file arsip setelah opsi -f
:
tar -xf archive.tar.xz
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 atau tar.bz2
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.xz .
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.xz
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 -xf archive.tar.xz -C /home/budi/files
Ekstrak File Tertentu dari File tar.xz
Untuk mengekstrak file tertentu dari file tar.bz2, tambahkan daftar nama file yang dipisahkan. Misal kita ingin extrak foto201.jpg
dan foto202.jpg
tar -xf archive.tar.xz foto201.jpg foto202.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 -xf archive.tar.xz dir1 dir2
Jika Anda mencoba mengekstrak file yang tidak ada dalam arsip, pesan kesalahan yang mirip dengan yang berikut ini akan ditampilkan:
tar -xf archive.tar.xz README
tar: README: Not found in archive tar: Exiting with failure status due to previous errors
Opsi --wildcards
memungkinkan Anda untuk mengekstrak file dari file tar.xz berdasarkan pola wildcard. Polanya harus dikutip untuk mencegah shell mengartikannya secara berbeda.
Misalnya, untuk mengekstrak hanya file yang namanya berakhiran .png
(file gambar), Anda akan menggunakan:
tar -xf archive.tar.xz --wildcards '*.png'
Mengekstrak file tar.xz dari stdin
Saat mengekstrak file tar.bz2 terkompresi dengan membaca arsip dari input standar (biasanya melalui piping), Anda harus menentukan opsi dekompresi. Opsi -J
akan memberitahu tar
bahwa file dikompres dengan xz.
Pada contoh di bawah ini, kita akan mengunduh Linux kernel menggunakan perintah wget
dan mengirimkan hasilnya ke perintah tar
:
wget -c https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.5.3.tar.xz -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.xz
Untuk membuat daftar konten file tar.xz, gunakan opsi --list
(-t
):
tar -tf archive.tar.xz
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.xz
-rw-r--r-- linuxid/users 0 2020-02-15 01:19 file1 -rw-r--r-- linuxid/users 0 2020-02-15 01:19 file2 -rw-r--r-- linuxid/users 0 2020-02-15 01:19 file3
Kesimpulan
File tar.xz adalah arsip Tar yang dikompres dengan xz. Untuk mengekstrak file tar.xz, gunakan perintah tar -jf
diikuti dengan nama arsip.