Hanya men-download .zip file dari internet. Saya ingin menggunakan terminal untuk unzip file. Apa cara yang benar untuk melakukan hal ini?
Jika unzip
perintah isn't sudah diinstal pada sistem anda, kemudian jalankan:
sudo apt-get install unzip
Setelah menginstal utilitas unzip, jika anda ingin mengekstrak ke folder tujuan tertentu, anda dapat menggunakan:
unzip file.zip -d destination_folder
Jika sumber dan direktori tujuan yang sama, anda hanya dapat melakukan:
unzip file.zip
Sebuah alat yang lebih berguna adalah 7z
, yang zip dan membuka ritsleting berbagai macam format kompresi, terutama lzma
, biasanya protokol di tertinggi tingkat kompresi.
Perintah ini akan menginstall 7z
:
sudo apt-get install p7zip-full
Perintah ini daftar isi dari zip:
7z l zipfile.zip
Perintah ini ekstrak isi dari zip:
7z x zipfile.zip
Banyak jawaban di sini menyebutkan alat-alat yang membutuhkan instalasi, tapi tak seorang pun telah disebutkan bahwa dua dari Ubuntu's bahasa scripting, Perl dan Python, sudah dilengkapi dengan semua yang diperlukan modul-modul yang memungkinkan anda untuk unzip arsip zip, yang berarti anda don't perlu menginstal apa pun. Hanya menggunakan salah satu dari dua script yang disajikan di bawah ini untuk melakukan pekerjaan. Mereka're cukup singkat dan bahkan dapat menjadi kental untuk one-liner perintah jika kita ingin.
#!/usr/bin/env python3
import sys
from zipfile import PyZipFile
for zip_file in sys.argv[1:]:
pzf = PyZipFile(zip_file)
pzf.extractall()
Penggunaan:
./pyunzip.py master.zip
atau
python3 pyunzip.py master.zip
#!/usr/bin/env perl
use Archive::Extract;
foreach my $filepath (@ARGV){
my $archive = Archive::Extract->new( archive => $filepath );
$archive->extract;
}
Penggunaan:
./perlunzip master.zip
atau
perl perlunzip.pl master.zip
Lihat juga
Jika sumber dan direktori tujuan yang sama, anda hanya dapat melakukan:
unzip filename.zip
Saya lebih suka bsdtar
untuk unzip
/zip
. Untuk penggalian, mereka cukup mirip:
bsdtar -x -f /one/two/three/four.zip -C /five
unzip /one/two/three/four.zip -d /five
Namun untuk zipping, bsdtar
menang. Katakanlah anda memiliki masukan ini:
/one/two/three/alfa/four.txt
/one/two/three/bravo/four.txt
dan ingin ini dalam file zip:
alfa/four.txt
bravo/four.txt
Ini adalah mudah dengan bsdtar
:
bsdtar -a -c -f four.zip -C /one/two/three alfa bravo
zip tidak memiliki -d
pilihan seperti unzip, sehingga anda tidak memiliki cara untuk mencapai di atas kecuali anda cd
pertama.
Berikut ini adalah penjelasan rinci tentang pilihan yang saya temukan berguna:
Perintah: unzip -[opsi] zip-jalan. -d opsional direktori tempat untuk mengekstrak file -l Menampilkan file arsip. -P password Menggunakan password untuk men-decrypt zipfile entri (jika ada). -Uji t file arsip dengan cyclic redundancy check. -u Update file yang sudah ada. -z arsip komentar
Install unzip ============= Jadi Pertama-tama kita perlu install unzip pada sistem kami jika tidak diinstal. unzip perintah ini digunakan untuk mengekstrak file dari arsip ZIP.
Jalankan perintah berikut untuk menginstal
unzip
sudo apt-get install unzip
unzip
Syntex$ unzip [-aCcfjLlnopqtuvy] [-d dir] zipfile
Sekarang Ikuti langkah-langkah di bawah ini:
UnZip File
1 – Jika File Zip di direktori/folder di mana terminal anda dan kami ingin mengambil itu di masa sekarang direktori kerja.
Gunakan perintah berikut untuk mencapai di atas menggambarkan skenario
sudo unzip zip_file_name.zip
jika file zip yang dilindungi dengan password, maka gunakan berikut ini perintah :
sudo ubzip -P zip_file_name.zip
pastikan anda menggunakan -P (ibukota P) tidak -p karena ini adalah pilihan yang berbeda.
2 – Jika file zip tidak hadir dalam direktori yang sama dan kami ingin ekstrak/unzip file di direktori yang berbeda.
Gunakan perintah berikut untuk mencapai di atas menggambarkan skenario
sudo unzip path/filename.zip -d another_path_or_same_path
jika kita tidak menggunakan opsi -d file akan diekstrak untuk hadir direktori kerja.
Dan jika file zip yang dilindungi kata sandi kita juga bisa menggunakan
-P
.menggunakan Perintah tar di Linux / Unix
tar
adalah singkatan dari Tape Arsip. tar perintah ini digunakan untuk Memanipulasi arsip di Linux/Unix. Administrator sistem menggunakan tar perintah yang sering untuk menyalin banyak file atau direktori ke sangat arsip terkompresi yang disebuttarball
atautar
,bzip
dangzip
di Linux/Unix sistem.tar Syntex
tar [OPTION...] [FILE]...
Atau
tar diperlukan Bendera
tar {-r|-t|-c|-x|-u}
tar optional Flags
tar {salah satu yang diperlukan Bendera} [ -d ][-B] [ -F ] [ -E ] [ -i ] [-h] [l] [m ] [o ] [ -p ] [ -w] [ -s ] [U ] [ -v ] [Nomor] [-Blok b] [-f Arsip]
Contoh
Buat Arsip tar File dengan Menekan sebuah Direktori atau File Tunggal
terminal perintah berikut akan membuat
.tar
file bernamasample_dir.tar
dengan direktori/home/codebind/sample_dir
atausample_dir
hadir di direktori kerja.ripon@ripon:~$ tar -cvf sample_dir.tar sample_dir sample_dir/ sample_dir/main.cpp sample_dir/sampel.png sample_dir/output ripon@ripon:~$ ls sample_dir sample_dir.tar
di Sini adalah apa yang mereka bendera (-cvf) benar-benar berarti
-c, --membuat
– membuat arsip baru
-x, --ekstrak, - mendapatkan
– mengekstrak file dari arsip
-f, --ARSIP file
– menggunakan file arsip atau ARSIP perangkatBuat
tar.gz
atautgz
Arsip File dengan Menekan sebuah Direktori atau File Tunggalterminal perintah berikut akan membuat
.tar.gz
file bernamasample_dir.tar.gz
dengan direktori/home/codebind/sample_dir
atausample_dir
hadir di direktori kerja.Pemberitahuan bahwa kami telah menambahkan tambahan bendera -z untuk perintah.Berikut adalah apa yang bendera -z benar-benar berarti
-z, --gzip, --gunzip --ungzip
– Kompres dengan gzip archiveripon@ripon:~$ tar -cvzf sample_dir.tar.gz sample_dirsample_dir/ sample_dir/main.cpp sample_dir/sampel.png sample_dir/output ripon@ripon:~$ ls sample_dir sample_dir.tar.gz
perintah di bawah ini akan membuat .tgz. Satu hal yang perlu diperhatikan adalah tar.gz dan tgz keduanya mirip.
ripon@ripon:~$ tar -cvzf sample_dir.tgz sample_dirsample_dir/ sample_dir/main.cpp sample_dir/sampel.png sample_dir/output ripon@ripon:~$ ls sample_dir sample_dir.tgz
Mengompresi Beberapa Direktori atau File Sekaligus
katakanlah, misalnya kita ingin untuk kompres
sample_dir
direktori,java_test
direktori, danabc.py
file ke file tar yang disebutsample_dir.tar.gz
.Jalankan perintah berikut untuk mencapai tujuan di atas.
ripon@ripon:~$ tar -cvzf sample_dir.tar.gz sample_dir java_test abc.py sample_dir/ sample_dir/main.cpp sample_dir/sampel.png sample_dir/output java_test/ java_test/HelloCV.java abc.py ripon@ripon:~$ ls sample_dir java_test abc.py sample_dir.tar.gz
Buat
.bzip2
Arsip File dengan Menekan sebuah Direktori atau File Tunggalripon@ripon:~$ tar -cjvf sample_dir.tar.bz2 sample_dir sample_dir/ sample_dir/main.cpp sample_dir/sampel.png sample_dir/output ripon@ripon:~$
Pemberitahuan bahwa kami telah menambahkan tambahan bendera
-f
untuk perintah.Berikut adalah apa yang bendera-f
benar-benar berarti
-f, --ARSIP file
– menggunakan file arsip atau ARSIP perangkatEkstrak
.tar
File ArsipKita dapat mengekstrak atau untar file terkompresi menggunakan perintah tar. Yang perintah di bawah ini akan mengekstrak isi
sample_dir.tar
ke hadir direktori.ripon@ripon:~$ tar -xvf sample_dir.tar sample_dir/ sample_dir/main.cpp sample_dir/sampel.png sample_dir/output ripon@ripon:~$
berikut ini perintah akan mengekstrak atau Untar file yang di tentukan Direktori yaitu
/home/codebind/dir_name
dalam kasus ini.ripon@ripon:~$ tar -xvf sample_dir.tar -C /home/codebind/dir_name sample_dir/ sample_dir/main.cpp sample_dir/sampel.png sample_dir/output ripon@ripon:~$
kami telah menambahkan tambahan bendera
-C
untuk perintah.Inilah bendera-C
benar-benar berarti
-C, --directory DIR
– mengubah ke direktori DIR