İnternetten yeni bir .Zip dosyası indirdim. Dosyayı açmak için terminali kullanmak istiyorum. Bunu yapmanın doğru yolu nedir?
unzip
komutu sisteminizde zaten kurulu değilse, aşağıdakileri çalıştırın:
Sudo apt-get install unzip
Unzip yardımcı programını yükledikten sonra, belirli bir hedef klasöre çıkarmak istiyorsanız, şunları kullanabilirsiniz:
unzip file.Zip -d destination_folder
Kaynak ve hedef dizinleri aynıysa, şunları yapabilirsiniz:
unzip file.Zip
Basitçe unzip
kullanabilirsiniz.
Yükle:
apt-get install unzip
Ve kullan:
cd /path/to/file
unzip file.Zip
Daha kullanışlı bir araç, lzma
, genellikle en yüksek sıkıştırma oranlarını sunan protokol olan bir dizi sıkıştırma biçimini sıkıştırıp açan 7z
.
Bu komut 7z
yükler:
Sudo apt-get install p7Zip-full
Bu komut Zip'in içeriğini listeler:
7z l zipfile.Zip
Bu komut, Zip'in içeriğini çıkarır:
7z x zipfile.Zip
Kullanabilirsiniz:
unzip file.Zip -d somedir
yourpath/somedir
öğesine çıkarmak
Mutlak bir yola çıkarmak istiyorsanız,
Sudo unzip file.Zip -d /somedir
Buradaki birçok cevap kurulum gerektiren araçlardan bahseder, ancak hiç kimse Ubuntu'nun betik dilinin (Perl ve Python) ikisinin bir Zip arşivini açmanıza izin veren tüm gerekli modüllerle birlikte geldiğini söylemedi; Başka. İşi yapmak için aşağıda verilen iki komuttan birini kullanın. Oldukça kısalar ve eğer istersen tek bir komuta bile veriliyor.
#!/usr/bin/env python3
import sys
from zipfile import PyZipFile
for Zip_file in sys.argv[1:]:
pzf = PyZipFile(Zip_file)
pzf.extractall()
Kullanımı:
./pyunzip.py master.Zip
veya
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;
}
Kullanımı:
./perlunzip master.Zip
veya
Perl perlunzip.pl master.Zip
Ayrıca bakınız
Kaynak ve hedef dizinleri aynıysa, şunları yapabilirsiniz:
unzip filename.Zip
bsdtar
- unzip
/Zip
tercih ederim. Çıkarmak için, oldukça benzerler:
bsdtar -x -f /one/two/three/four.Zip -C /five
unzip /one/two/three/four.Zip -d /five
Bununla birlikte, sıkıştırma işlemi için bsdtar
kazanır. Diyelim ki bu girdi:
/one/two/three/alfa/four.txt
/one/two/three/bravo/four.txt
ve bunu Zip dosyasında istiyorum:
alfa/four.txt
bravo/four.txt
Bu bsdtar
ile kolaydır:
bsdtar -a -c -f four.Zip -C /one/two/three alfa bravo
Zip, unzip gibi -d
seçeneğine sahip olmadığı için, ilk önce cd
olmadıkça, yukarıdakileri elde etmenin bir yolu yoktur.
İşte faydalı bulduğum seçeneklerin ayrıntılı açıklaması:
Komut: unzip - [seçenek] Zip-yolu. -D dosyaları çıkarmak için isteğe bağlı bir dizin -L Arşiv dosyalarını listeler. -P parola kullanım parola şifreli zipfile girişlerinin şifresini çözmek için (varsa). -t Döngüsel artıklık kontrolü ile arşiv dosyalarını test edin. -u Varolan dosyaları güncelle. -z arşiv yorumu
Unzip'i kurun ============= Öyleyse, önceden kurulmamışsa, sistemimize unzip kurmamız gerekir. unzip komutu, bir Zip arşivinden dosyaları çıkartmak için kullanılır.
unzip
yüklemek için aşağıdaki komutu çalıştırınSudo apt-get install unzip
unzip
Syntex$ unzip [-aCcfjLlnopqtuvy] [-d dir] zipfile
Şimdi aşağıdaki adımları izleyin:
UnZip Dosyası
OPTION 1 - Sıkıştırılmış Dosya, terminalinizin bulunduğu dizinde/klasöründeyse ve mevcut çalışma dizinine çıkarmak istiyoruz.
Yukarıda açıklanan senaryoyu elde etmek için aşağıdaki komutu kullanın
Sudo unzip Zip_file_name.Zip
zip dosyası bir şifre ile korunuyorsa, aşağıdaki komutu kullanın:
Sudo ubzip -P Zip_file_name.Zip
Lütfen farklı seçenekler olduğundan -P (büyük harf P) 'yi kullandığınızdan emin olun.
OPTION 2 - Zip dosyası aynı dizinde yoksa ve dosyayı farklı bir dizinde açmak/açmak istiyorsak.
Yukarıda açıklanan senaryoyu elde etmek için aşağıdaki komutu kullanın
Sudo unzip path/filename.Zip -d another_path_or_same_path
-d seçeneğini kullanmazsak, dosya mevcut çalışma dizinine çıkarılır.
Zip dosyası parola korumalı ise ve ayrıca
-P
kullanabiliriz.linux/Unix'te tar komutunu kullan
tar
Tape Archive için bir kısaltmadır. tar komutu Linux/Unix'teki arşivleri yönetmek için kullanılır. Sistem yöneticileri, bir sürü dosyayı veya dizini, yüksek oranda sıkıştırılmış arşivetarball
veyatar
,bzip
vegzip
in Linux/Unix sistemi.katran Syntex
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şturma
Aşağıdaki terminal komutu, mevcut çalışma dizininde
.tar
veyasample_dir.tar
dizini olan/home/codebind/sample_dir
adlı birsample_dir
dosyası oluşturur.[email protected]:~$ tar -cvf sample_dir.tar sample_dir sample_dir/ sample_dir/main.cpp sample_dir/sample.png sample_dir/output [email protected]:~$ ls sample_dir sample_dir.tar
İşte bu bayrakların (-cvf) aslında ne anlama geldiği
-c, --create
– yeni bir arşiv oluştur
-x, --extract, --get
– bir arşivden dosyaları çıkart
-f, --file ARCHIVE
– arşiv dosyasını veya ARCHIVE cihazını kullan
tar.gz
veyatgz
Bir Dizin veya Tek Bir Dosya Sıkıştırarak Arşiv Dosyası OluşturunAşağıdaki terminal komutu, mevcut çalışma dizininde
.tar.gz
veyasample_dir.tar.gz
dizini olan/home/codebind/sample_dir
adlı birsample_dir
dosyası oluşturur.-Z komutuna fazladan bayrak eklediğimize dikkat edin. Bu bayrak -z aslında ne anlama geliyor?
-z, --gzip, --gunzip --ungzip
– Arşivi gzip ile sıkıştır[email protected]:~$ tar -cvzf sample_dir.tar.gz sample_dirsample_dir/ sample_dir/main.cpp sample_dir/sample.png sample_dir/output [email protected]:~$ ls sample_dir sample_dir.tar.gz
Aşağıdaki komut bir .tgz dosyası oluşturacaktır. Dikkat edilmesi gerekenlerden biri tar.gz ve tgz'nin ikisi de benzer.
[email protected]:~$ tar -cvzf sample_dir.tgz sample_dirsample_dir/ sample_dir/main.cpp sample_dir/sample.png sample_dir/output [email protected]:~$ ls sample_dir sample_dir.tgz
Aynı Anda Birden Çok Dizin veya Dosya Sıkıştırma
Diyelim ki, örneğin
sample_dir
dizinini,Java_test
dizinini veabc.py
dosyasınısample_dir.tar.gz
adlı bir tar dosyasına sıkıştırmak istiyoruz.Yukarıdaki amaca ulaşmak için aşağıdaki komutu çalıştırın.
[email protected]:~$ tar -cvzf sample_dir.tar.gz sample_dir Java_test abc.py sample_dir/ sample_dir/main.cpp sample_dir/sample.png sample_dir/output Java_test/ Java_test/HelloCV.Java abc.py [email protected]:~$ ls sample_dir Java_test abc.py sample_dir.tar.gz
.bzip2
Dizini veya Tek Bir Dosyayı Sıkıştırarak Arşiv Dosyası Oluşturun[email protected]:~$ tar -cjvf sample_dir.tar.bz2 sample_dir sample_dir/ sample_dir/main.cpp sample_dir/sample.png sample_dir/output [email protected]:~$
Komuta ek olarak
-f
bayrağı eklediğimize dikkat edin. Bu bayrak-f
aslında ne anlama geliyor
-f, --file ARCHIVE
– arşiv dosyasını veya ARCHIVE cihazını kullan
.tar
Arşiv Dosyasını AyıklaTar komutunu kullanarak sıkıştırılmış dosyayı ayıklayabilir veya kaldırabiliriz. Aşağıdaki komut,
sample_dir.tar
içeriğini mevcut dizine çıkartır.[email protected]:~$ tar -xvf sample_dir.tar sample_dir/ sample_dir/main.cpp sample_dir/sample.png sample_dir/output [email protected]:~$
Aşağıdaki komut belirtilen Dizinde dosyaları açacak veya Untar, yani bu durumda
/home/codebind/dir_name
.[email protected]:~$ tar -xvf sample_dir.tar -C /home/codebind/dir_name sample_dir/ sample_dir/main.cpp sample_dir/sample.png sample_dir/output [email protected]:~$
-C
komutuna fazladan bayrak ekledik. İşte bu bayrak-C
aslında ne anlama geliyor?
-C, --directory DIR
- dizine değiştir