Saya ingin melihat konten (daftar file dan folder) dari suatu arsip, misalnya tar.gz
file tanpa mengekstraknya .
Apakah ada metode untuk melakukan itu?
command-line
Avinash Raj
sumber
sumber
tar -tvf xxx.tgz
ini juga akan menunjukkan properti detail file.tree
melihat tampilan pohontar -tf filename.tar.gz | tree
unzip -l
/unrar -l
Anda juga dapat menggunakan vim
sumber
ex +%p foo.tar.gz
.vim file.tar.gz
) dikatakan "Pilih file dengan kursor dan tekan ENTER". Anda lakukan itu, gerakkan kursor di atas file dan tekan ENTER.less
juga dapat membuka arsip yanggz
dikompresi dan tidak dikompresitar
. Ini memberi Andals -l
output gaya yang indah juga:Dan karena itu
less
, Anda dapat menggulirnya, mencarinya, dll. Namun gagal dengan algoritma kompresi lainnya (menurut pengalaman saya).sumber
alias
opsi khususless
yang tidak Anda tampilkan di sini? Saya hanya mencoba melihatnya, tetapi tidak berhasil. Saya tidak memiliki pengaturan alias untukless
.Anda bisa menggunakan perintah z:
zcat
,zless
,zgrep
.Untuk melihat konten file gunakan:
Untuk mendapatkan sesuatu gunakan:
Untuk memeriksa perbedaan antar file, gunakan:
Ini hanya beberapa contoh, masih banyak lagi.
sumber
tar
's-t
bendera akan daftar isi untuk Anda. Tambahkan itu ke flag Anda yang lain (jadi-tvfz
untuk atar.gz
,-tvfj
untuk atar.bz2
, dll) dan Anda dapat menjelajah tanpa mengekstraksi. Dari sana Anda dapat mengekstrak file tunggal dengan cukup mudahMasalah besar dengan
tar
yang mengingat semua bendera lainnya . Jadi saya biasanya mengandalkan7z
(p7zip-full
paket) untuk melakukan semua pengarsipan saya. Saya tidak akan mengklaim itu sepenuhnya lebih baik tetapi mendukung hampir semua (tanpa harus menentukan jenis kompresi) dan argumennya logis.Ini tentu saja kurang mampu, tetapi Anda tidak perlu halaman manual untuk menggunakannya.
Ada juga Midnight Commander (
mc
). Ini adalah badass all-around untuk manajemen file berbasis terminal kuasi-grafis dan dengan beberapa pengujian ringan hanya membiarkan Anda menelusuri keduanya.tar.gz
dan.7z
arsip. Saya tidak yakin berapa banyak yang didukung.sumber
Yah, itu tergantung pada file. Sebagian besar (de) program kompresi memiliki bendera yang mencantumkan konten arsip.
tar
/tar.gz
/tgz
/tar.xz
/tar.bz2
/tbz
filezip
file7zip
filerar
fileItu sebagian besar format arsip yang lebih populer. Dengan semua ini dalam pikiran, Anda bisa menulis skrip kecil yang menggunakan perintah yang sesuai tergantung pada ekstensi file yang Anda berikan padanya:
Simpan skrip itu di Anda
PATH
dan buat itu bisa dieksekusi. Anda kemudian dapat mencantumkan konten arsip apa pun:Dan karena seseorang menyebutkan bahwa editor yang lebih rendah, emacs juga dapat melakukan ini:
sumber
Mengapa tidak digunakan
vim
untuk menelusuri arsip Anda dan membuka file (setidaknya file seperti teks):Tekan tombol panah untuk menggulir dan Entermembuka file.
sumber
Midnight Commander (
mc
) juga memiliki penampil file terkompresi yang baik, meskipun saya menganggap ini sedikit curang karena mc adalah manajer file, meskipun berbasis teks.Juga, jika yang Anda inginkan adalah melihat apa yang ada di dalam arsip terkompresi, Anda dapat mempelajari perintah "view" untuk setiap kompresor.
tar tzvf
akan menunjukkan kepada Anda konten file tar,unzip -l
akan melakukannya untuk file zip, dan sebagainya.sumber
Menggunakan
view filename.tar.gz
juga akan berhasil. sama seperti vim, tetapi tanpa izin tulis.sumber
lesspipe
adalah skrip shell yang diinstal secara default sebagai bagian dariless
paket yang dapat mencantumkan isitar.gz
arsip, serta serangkaian format file arsip umum lainnya.Itu disebut oleh
less
perintah ( lihat jawaban Oli ) sebagai preprocessor input jika$LESSOPEN
variabel lingkungan diatur dengan tepat.Jika merasa ingin bertualang, ambil puncaknya
vi /usr/bin/lesspipe
untuk melihat perintah apa yang digunakan. Untuk file yang cocok dengantar.gz
ekstensi, kita dapat melihat bahwa ia menggunakan ditar tzvf
bawah tenda bersama dengan--force-local
opsi untuk menonaktifkan fitur yang tidak jelastar
yang jika tidak akan membingungkan titik dua dalam nama file dengan perintah untuk menggunakan tape drive jarak jauh:Perhatikan bahwa karena dirancang terutama sebagai preprosesor untuk
less
, itu tidak akan menghasilkan apa pun jika tidak mengenali tipe file. Saya perhatikan bahwa beberapa.tar.gz
file yang saya unduh tidak akan berfungsi karena mereka tidak benar-benar menggunakan kompresi gzip walaupun ada nama file.sumber
Jika Anda ingin melihat konten file tertentu dalam arsip tanpa mengekstraksi arsip atau menulis ke disk dengan cara apa pun, gunakan bendera -O (huruf kapital) untuk menulis ke stdout alih-alih file.
Pastikan O datang sebelum f atau ia akan mencoba mengurai O sebagai nama file.
sumber