Bir zip dosyasını Terminalden nasıl açabilirim?

Sadece indirilen .internetten zip dosyası. Dosyayı açmak için terminali kullanmak istiyorum. Ne bunu yapmak için doğru yolu nedir?

Eğer... unzip komut sisteminizde zaten yüklü değil, sonra çalıştır:

sudo apt-get install unzip

Unzip yardımcı programını yükledikten sonra, belirli bir hedef klasöre ayıklamak istiyorsanız, şunları kullanabilirsiniz:

unzip file.zip -d destination_folder

Kaynak ve hedef dizinler aynıysa, basitçe yapabilirsiniz:

unzip file.zip

Sadece kullanabilirsiniz unzip.

Yükleyin:

apt-get install unzip

Ve kullan:

cd /path/to/fileunzip file.zip

Daha kullanışlı bir araç 7z, özellikle bir dizi sıkıştırma formatını sıkıştırır ve açar lzma genellikle en yüksek sıkıştırma oranlarını sunan protokoldür.

Bu komut yükler 7z:

sudo apt-get install p7zip-full

Bu komut zip dosyasının içeriğini listeler:

7z l zipfile.zip

Bu komut zip dosyasının içeriğini ayıklar:

7z x zipfile.zip

Kullanabilirsiniz:

unzip file.zip -d somedir

ayıklamak için yourpath/somedir

Mutlak bir yola çıkarmak istiyorsanız, şunu kullanın

sudo unzip file.zip -d /somedir

Komut dosyası araçlarını kullanma: Perl ve Python

Buradaki birçok cevap, kurulum gerektiren araçlardan bahseder, ancak hiç kimse Ubuntu'nun iki betik dili olan Perl ve Python'un zaten bir zip arşivini açmanıza izin veren gerekli tüm modüllerle birlikte geldiğinden bahsetmemiştir, bu da başka bir şey yüklemeniz gerekmediği anlamına gelir. İşi yapmak için aşağıda sunulan iki komut dosyasından birini kullanmanız yeterlidir. Oldukça kısalar ve isteseydik tek satırlık bir komutla bile yoğunlaştırılabilirler.

Piton

#!/usr/bin/env python3import sysfrom zipfile import PyZipFilefor zip_file in sys.argv[1:]:    pzf = PyZipFile(zip_file)    pzf.extractall()

Kullanma:

./pyunzip.py master.zip 

veya

python3 pyunzip.py master.zip

Perlname

#!/usr/bin/env perluse Archive::Extract;foreach my $filepath (@ARGV){    my $archive = Archive::Extract->new( archive => $filepath );    $archive->extract;}

Kullanma:

./perlunzip master.zip

veya

perl perlunzip.pl master.zip

Ayrıca bakınız

Kaynak ve hedef dizinler aynıysa, basitçe yapabilirsiniz:

unzip filename.zip

Tercih ederim bsdtar -e doğru unzip/zip. Ayıklamak için oldukça benzerler:

bsdtar -x -f /one/two/three/four.zip -C /fiveunzip /one/two/three/four.zip -d /five

Ancak sıkıştırma için, bsdtar birincilikler. Bu girdiye sahip olduğunuzu söyleyin:

/one/two/three/alfa/four.txt/one/two/three/bravo/four.txt

ve bunu zip dosyasında istiyorum:

alfa/four.txtbravo/four.txt

Bu çok kolay bsdtar:

bsdtar -a -c -f four.zip -C /one/two/three alfa bravo

zip yok -d unzip gibi bir seçenek, bu yüzden siz yapmadığınız sürece yukarıdakilere ulaşmanın bir yolu yok cd ilk.

İşte yararlı bulduğum seçeneklerin ayrıntılı açıklaması:

Komut: unzip -[seçenek] zip-yolu.               -d dosyaların çıkarılacağı isteğe bağlı bir dizin -l Arşiv dosyalarını listeler.               -P şifre Kullanmak şifre şifrelenmiş zıpfile girdilerinin şifresini çözmek için (varsa).               -t Arşiv dosyalarını döngüsel artıklık kontrolü ile test edin.                 -mevcut dosyaları güncelleyin.                 -z arşiv yorumu

Bu yönergeleri izleyin: http://www.codebind.com/linux-tutorials/unzip-zip-file-using-terminal-linux-ubuntu-linux-mint-debian/

Unzip'i yükle

Bu nedenle, her şeyden önce, yüklü değilse unzip'i sistemimize yüklememiz gerekir. unzip komutu aZIP arşivindeki dosyaları ayıklamak için kullanılır.

Yüklemek için aşağıdaki komutu çalıştırın unzip

sudo apt-get install unzip

unzip Sözdizimi

$ unzip [-aCcfjLlnopqtuvy] [-d dir] zipfile

Şimdi aşağıdaki adımları izleyin:

Dosyayı Aç

SEÇENEK 1 - Zip Dosyası, terminalinizin bulunduğu dizin / klasördeyse ve bunu mevcut çalışma dizininde ayıklamak istiyorsak.

Yukarıda açıklanan senaryoyu gerçekleştirmek için aşağıdaki komutu kullanın

sudo unzip zip_file_name.zip

zip dosyası bir parola ile korunuyorsa, aşağıdaki komutu kullanın :

sudo ubzip -P zip_file_name.zip

Lütfen -P (büyük harf P) not -p kullandığınızdan emin olun, çünkü bunlar farklı seçeneklerdir.

SEÇENEK 2 - Zip dosyası aynı dizinde bulunmuyorsa ve dosyayı farklı dizinde ayıklamak / açmak istiyorsak.

Yukarıda açıklanan senaryoyu gerçekleştirmek için aşağıdaki komutu kullanın

sudo unzip path/filename.zip -d another_path_or_same_path

option -d kullanmazsak, dosya presentworking dizinine ayıklanır.

Ve eğer zip dosyası şifre korumalıysa da kullanabiliriz -P.

Linux / Unix'te tar Komutunu Kullanma

tar teyp Arşivinin kısaltmasıdır. tar komutu Linux / Unix'te arşivleri manipüle etmek için kullanılır. Sistem yöneticileri, bir grup dosyayı veya dizini yüksek oranda sıkıştırılmış arşive kopyalamak için sık sık tarcommand kullanır tarball veya tar, bzip vegzip içinde Linux/Unix sistem.

katran Sözdizimi

tar [OPTION...] [FILE]...

Veya

katran gerekli Bayraklar

tar {-r|-t|-c|-x|-u}

tar isteğe bağlı Bayraklar

tar {one of the required Flags} [ -d ][-B] [ -F ] [ -E ] [ -i ] [-h ] [ -l ] [ -m ] [ -o ] [ -p ] [ -w] [ -s ] [ -U ] [ -v ][-Number] [-b Blocks] [-f Archive]

Örnekler

Bir Dizini veya Tek Bir Dosyayı Sıkıştırarak tar Arşiv Dosyası Oluşturun

Aşağıdaki terminal komutu bir .tar dosya adısample_dir.tar bir dizin ile /home/codebind/sample_dir veyasample_dir mevcut çalışma dizininde.

ripon@ripon:~$  tar -cvf sample_dir.tar sample_dirsample_dir/sample_dir/main.cppsample_dir/sample.pngsample_dir/outputripon@ripon:~$ lssample_dir sample_dir.tar

enter image description here

İşte bu bayrakların (-cvf) gerçekte ne anlama geldiği

-c, --create– yeni bir arşiv oluşturun

-x, --extract, --get- bir arşivden dosya ayıkla

-f, --file ARCHIVE- arşiv dosyasını veya cihaz arşivini kullanın

Yaratmak tar.gz veya tgz Bir Dizini veya Tek Bir Dosyayı Sıkıştırarak Dosyayı Arşivleme

Aşağıdaki terminal komutu bir .tar.gz dosya adısample_dir.tar.gz bir dizin ile /home/codebind/sample_dir veyasample_dir mevcut çalışma dizininde.

Komuta fazladan flag -z eklediğimize dikkat edin.İşte theflag -z aslında ne anlama geliyor

-z, --gzip, --gunzip --ungzip- Arşivi gzip ile sıkıştırın

ripon@ripon:~$ tar -cvzf sample_dir.tar.gz sample_dirsample_dir/sample_dir/main.cppsample_dir/sample.pngsample_dir/outputripon@ripon:~$ lssample_dir sample_dir.tar.gz

enter image description here

Aşağıdaki komut bir tane oluşturacaktır.tgz dosyası. Istar'ı fark etmek için bir tane.gz ve tgz her ikisi de benzerdir.

ripon@ripon:~$ tar -cvzf sample_dir.tgz sample_dirsample_dir/sample_dir/main.cppsample_dir/sample.pngsample_dir/outputripon@ripon:~$ lssample_dir sample_dir.tgz

Birden Çok Dizini veya Dosyayı Aynı Anda Sıkıştırma

Diyelim ki, örneğin sıkıştırmak istiyoruz sample_dir dizin, java_test dizin ve abc.py adlı bir tar dosyasına dosyasample_dir.tar.gz.

Yukarıdaki hedefe ulaşmak için aşağıdaki komutu çalıştırın.

ripon@ripon:~$ tar -cvzf sample_dir.tar.gz sample_dir java_test abc.pysample_dir/sample_dir/main.cppsample_dir/sample.pngsample_dir/outputjava_test/java_test/HelloCV.javaabc.pyripon@ripon:~$ lssample_dir java_test abc.py sample_dir.tar.gz

enter image description here

Yaratmak .bzip2 Bir Dizini veya Tek Bir Dosyayı Sıkıştırarak Dosyayı Arşivleme

ripon@ripon:~$ tar -cjvf sample_dir.tar.bz2 sample_dirsample_dir/sample_dir/main.cppsample_dir/sample.pngsample_dir/outputripon@ripon:~$ 

Ekstra bayrak eklediğimize dikkat edin -f komut için.İşte bayrak -f aslında demek istediğim

-f, --file ARCHIVE- arşiv dosyasını veya cihaz arşivini kullanın

enter image description here

Çıkarmak .tar Arşiv Dosyası

Sıkıştırılmış dosyayı tar komutunu kullanarak ayıklayabilir veya çözebiliriz. Aşağıdaki komut içeriğini ayıklayacaktır sample_dir.tar mevcut dizine.

ripon@ripon:~$ tar -xvf sample_dir.tarsample_dir/sample_dir/main.cppsample_dir/sample.pngsample_dir/outputripon@ripon:~$ 

enter image description here

Aşağıdaki komut, specifieddirectory'deki dosyaları ayıklayacak veya kaldıracaktır. /home/codebind/dir_name bu durumda.

ripon@ripon:~$ tar -xvf sample_dir.tar -C /home/codebind/dir_namesample_dir/sample_dir/main.cppsample_dir/sample.pngsample_dir/outputripon@ripon:~$ 

ekstra bayrak ekledik -C komut için.İşte bayrak -Caslında demek istediğim

-C, --directory DIR - dizin dizinine değiştir

enter image description here

Geçerli klasördeki tüm dosyaları ayıklayın, şunları kullanabilirsiniz: unzip \*.ZIP

@burtsevyg ters eğik çizgi orada gerekli değildir. Bu, kabuğun \ * harfini gerçek yıldız sembolü olarak ele almasını sağlayacaktır. Sadece unzip * kullanın.zip' kabuğun genişlemesini sağlamak için '*' ile biten tüm dosyalara '.ZIP

Tek başına `*’ kullanmak benim için işe yaramadı. ‘Dosya adı eşleşmedi’ hatalarına neden oldu. ‘*’ işi yaptı.

Ubuntu’da önceden yüklenmiş birden çok sıkıştırma / açma aracı vardır. Tam liste için konsoldan ‘apropos zip’ komutunu çalıştırın.

Belirli özelliklere ihtiyacınız olmadıkça, zip’e özgü bir yerine “unar” kullanmanızı ve öğrenmenizi öneririm. "Desteklenen dosya formatları Zıp, Tar-GZıp, Tar-BZıp2, RAR, 7-zıp, LhA, StuffIt ve diğer birçok eski ve belirsiz formatları içerir. ".

İlgili (`* için.tgz ’ dosyaları): Nasıl açılır.terminali kullanarak tgz dosyası?