File tar adalah arsip terkompresi yang digunakan dalam distribusi Linux, seperti Ubuntu. Mereka dapat diekstraksi menggunakan perintah tar di terminal. Ekstensi .tar.gz dan .tar.bz2 menunjukkan bahwa file tar dikompresi menggunakan algoritma kompresi gzip atau bzip2. Mengekstrak file dari file tar dapat dilakukan menggunakan perintah tar dengan opsi -x, -v, dan -z (.gz) atau -j (bz2) bergantung pada jenis kompresi. File yang diekstraksi dapat diarahkan ke direktori tertentu menggunakan opsi -C. File
Tar adalah arsip terkompresi. Anda akan sering menjumpainya saat menggunakan distribusi Linux seperti Ubuntu atau bahkan saat menggunakan terminal di macOS. Berikut cara mengekstrak — atau menghapus tar — konten file tar, juga dikenal sebagai tarball.
Apa Arti .tar.gz dan .tar.bz2?
File yang memiliki ekstensi .tar.gz atau .tar.bz2 adalah file arsip terkompresi. File dengan ekstensi .tar saja tidak terkompresi, tetapi akan sangat jarang.
Bagian .tar dari ekstensi file adalah singkatan dari tape archive, dan merupakan alasan mengapa kedua jenis file ini disebut file tar. File tar sudah ada sejak tahun 1979 ketika perintah tar dibuat untuk memungkinkan administrator sistem mengarsipkan file ke dalam tape. Empat puluh tahun kemudian kami masih menggunakan perintah tar untuk mengekstrak file tar ke hard drive kami. Seseorang di suatu tempat mungkin masih menggunakan tar dengan tape.
Akhiran ekstensi .gz atau .bz2 menunjukkan bahwa arsip telah dikompresi, menggunakan algoritma kompresi gzip atau bzip2. Perintah tar akan bekerja dengan baik pada kedua jenis file, jadi tidak masalah metode kompresi mana yang digunakan — dan perintah tersebut harus tersedia di mana pun Anda memiliki shell Bash. Anda hanya perlu menggunakan opsi baris perintah tar yang sesuai.
Perlu dicatat bahwa semua yang ada di artikel ini juga berfungsi pada Subsistem Windows untuk Linux, yang memungkinkan Anda menginstal Bash shell di dalam Windows 10 atau Windows 11, meskipun ada cara lain untuk membuka file tar.gz di Windows juga.
Mengekstrak File dari File Tar
Katakanlah Anda telah mengunduh dua file lembaran musik. Satu file disebut ukulele_songs.tar.gz , yang lain disebut Guitar_songs.tar.bz2 . File-file ini ada di direktori Unduhan.
Mari kita ekstrak (juga kadang-kadang disebut “untar” alih-alih mengekstrak) lagu ukulele:
tar -xvzf ukulele_songs.tar.gz
Saat file diekstraksi, file tersebut terdaftar di jendela terminal.
Opsi baris perintah yang kami gunakan adalah:
- -x: Ekstrak, ambil file dari file tar.
- -v: Verbose, daftarkan file yang sedang diekstraksi.
- -z: Gzip, gunakan gzip untuk mendekompresi file tar.
- -f: File, nama file tar yang ingin kita gunakan untuk tar. Pilihan ini harus diikuti dengan nama file tar.
Buat daftar file di direktori dengan ls dan Anda akan melihat bahwa direktori telah dibuat bernama Lagu Ukulele. File yang diekstraksi ada di direktori itu. Dari mana asal direktori ini? Itu terkandung dalam file tar, dan diekstraksi bersama dengan filenya.
Sekarang mari kita ekstrak lagu gitarnya. Untuk melakukan ini kita akan menggunakan perintah yang hampir sama persis seperti sebelumnya tetapi dengan satu perbedaan penting. Akhiran ekstensi .bz2 memberi tahu kita bahwa ekstensi tersebut telah dikompresi menggunakan perintah bzip2. Daripada menggunakan opsi-z (gzip), kita akan menggunakan opsi -j (bzip2) untuk mengekstrak file bz2.
tar -xvjf Guitar_songs.tar.bz2
Sekali lagi, file akan dicantumkan ke terminal saat diekstraksi. Untuk lebih jelasnya, opsi baris perintah yang kami gunakan dengan tar untuk file .tar.bz2 adalah:
- -x: Ekstrak, ambil file dari file tar.
- -v: Verbose, daftarkan file yang sedang diekstraksi.
- -j: Bzip2, gunakan bzip2 untuk mendekompresi file tar.
- -f: File, nama file tar yang ingin kita gunakan untuk tar.
Jika kita mencantumkan file di direktori Download kita akan melihat bahwa direktori lain bernama Lagu Gitar telah dibuat.
Memilih Tempat Mengekstrak File Ke
Jika kita ingin mengekstrak file ke lokasi selain direktori saat ini, kita dapat menentukan target direktori menggunakan opsi -C (direktori tertentu).
tar -xvjf Guitar_songs.tar.gz -C ~/Documents/Songs/
Melihat di direktori Dokumen/Lagu kami, kami akan melihat direktori Lagu Gitar telah dibuat.
Perhatikan bahwa target direktori harus sudah ada, tar tidak akan membuatnya jika tidak ada. Jika Anda perlu membuat direktori dan meminta tar mengekstrak semua file ke dalamnya dalam satu perintah, Anda dapat melakukannya sebagai berikut:
mkdir -p ~/Documents/Songs/Downloaded && tar -xvjf Guitar_songs.tar.gz -C ~/ Dokumen/Lagu/Diunduh/
Opsi -p (orang tua) menyebabkan mkdir membuat direktori induk apa pun yang diperlukan, memastikan direktori target dibuat.
Mencari Di Dalam File Tar Sebelum Mengekstraknya
Sejauh ini kami baru saja melakukan lompatan keyakinan dan mengekstrak file terlihat tak terlihat. Anda mungkin ingin melihat sebelum melompat. Anda dapat meninjau konten file tar sebelum mengekstraknya dengan menggunakan opsi -t (daftar). Biasanya lebih mudah untuk menyalurkan output melalui perintah less.
tar -tf ukulele_songs.tar.gz | less
Perhatikan bahwa kita tidak perlu menggunakan opsi -z untuk membuat daftar file. Kita hanya perlu menambahkan opsi -z saat kita mengekstrak file dari file .tar.gz. Demikian pula, kita tidak memerlukan opsi -j untuk membuat daftar file dalam file tar.bz2.
Menggulir output kita dapat melihat bahwa semua yang ada di file tar disimpan dalam direktori bernama Lagu Ukulele, dan di dalam direktori itu, ada adalah file dan direktori lainnya.
Kita dapat melihat bahwa direktori Lagu Ukulele berisi direktori yang disebut Lagu Acak, Ramones, dan Kemungkinan.
Untuk mengekstrak semua file dari direktori dalam file tar gunakan perintah berikut. Perhatikan bahwa path dibungkus dengan tanda kutip karena ada spasi di path.
tar -xvzf ukulele_songs.tar.gz "Ukulele Songs/Ramones/"
Untuk mengekstrak satu file, berikan path dan nama file.
tar - xvzf ukulele_songs.tar.gz "Lagu Ukulele/023 - My Babe.odt"
Anda dapat mengekstrak file pilihan dengan menggunakan wildcard, di mana * mewakili string karakter apa pun dan ? mewakili karakter tunggal apa pun. Menggunakan wildcard memerlukan penggunaan opsi –wildcards.
tar -xvz --wildcards -f ukulele_songs.tar.gz "Ukulele Songs/Possibles/B*"
Mengekstrak File Tanpa Mengekstrak Direktori
Jika Anda tidak ingin struktur direktori di tar file yang akan dibuat ulang di hard drive Anda, gunakan opsi –strip-components. Opsi –strip-components memerlukan parameter numerik. Angka tersebut menunjukkan berapa banyak level direktori yang harus diabaikan. File dari direktori yang diabaikan masih diekstraksi, tetapi struktur direktori tidak direplikasi pada hard drive Anda.
Jika kami menentukan –strip-components=1 dengan contoh file tar kami, direktori paling atas Lagu Ukulele dalam file tar tidak dibuat pada harddisk. File dan direktori yang akan diekstraksi ke direktori tersebut diekstraksi di direktori target.
tar -xvzf ukulele_songs.tar.gz --strip-components=1
Hanya ada dua tingkat direktori yang bersarang dalam file tar contoh kita. Jadi jika kita menggunakan –strip-components=2, semua file diekstraksi di direktori target, dan tidak ada direktori lain yang dibuat.
tar -xvzf ukulele_songs.tar.gz --strip-components=2
Jika Anda melihat orang Linux halaman Anda akan melihat bahwa tar harus menjadi kandidat yang baik untuk judul “perintah yang memiliki opsi baris perintah terbanyak.” Untungnya, untuk memungkinkan kita mengekstrak file dari file .tar.gz dan tar.bz2 dengan tingkat kontrol granular yang baik, kita hanya perlu mengingat beberapa opsi ini.