spot_img
Friday, April 19, 2024
spot_img
HomeTechBilgi TeknolojisiLinux Terminalinden Dosyaları Sıkıştırma veya Açma

Linux Terminalinden Dosyaları Sıkıştırma veya Açma

-

Linux kabuk istemi
Fatmawati Achmad Zaenuri / Shutterstock.com

ZIP dosyaları, Windows, macOS ve hatta Linux sistemlerinde yaygın olarak kullanılan evrensel bir arşivdir. Bazı yaygın Linux terminal komutları ile bir zip arşivi oluşturabilir veya birinden dosyaları açabilirsiniz.

ZIP Sıkıştırılmış Arşiv Dosya Biçimi

Windows alanındaki ZIP biçiminin hakimiyeti sayesinde, ZIP dosyaları muhtemelen dünyadaki en yaygın sıkıştırılmış arşiv biçimidir.

Linux'ta .tar.gz ve tar.bz2 dosyaları yaygın olsa da, Windows kullanıcıları muhtemelen ZIP biçiminde bir arşiv gönderir. Bazı dosyaları arşivlemek ve bir Windows kullanıcısına göndermek istiyorsanız, ZIP biçimi herkes için en kolay ve en uyumlu çözüm olacaktır.

İLİŞKİLİ: Linux'ta bir .tar.gz veya .tar.bz2 Dosyasından Dosyaları Ayıklama

zip, unzip ve Diğer Yardımcı Programlar

Linux ve macOS gibi Unix benzeri işletim sistemlerinin ZIP dosyaları oluşturmanıza ve bunlardan dosya çıkarmanıza izin veren araçlara sahip olduğunu zaten biliyor olabilirsiniz. zip ve unzip. Ancak, aşağıdakiler gibi ilgili tüm yardımcı programlar ailesi vardır: zipcloak, zipdetails, zipsplit , ve zipinfo.

Bazı Linux dağıtımlarını, bu yardımcı programları standart yüklemeye dahil edip etmediklerini kontrol ettik. Tüm yardımcı programlar Ubuntu 19.04, 18.10 ve 18.04'te mevcuttu. Ayrıca Manjaro 18.04'te de mevcutlardı. Fedora 29 dahil zip ve unzip, ancak diğer yardımcı programların hiçbiri ve CentOS için de durum böyle değildi.

Eksik öğeleri Fedora 29'a yüklemek için aşağıdaki komutu kullanın:

sudo dnf install perl-IO-Compress

Fedora için zip kurulum komutu

Eksik öğeleri CentOS 7'ye yüklemek için aşağıdaki komutu kullanın:

sudo yum install perl-IO-Compress

Centos'ta zip kurulum komutu

Zip yardımcı programlarından herhangi biri yukarıda belirtilmeyen bir Linux dağıtımında yoksa, gerekli paketi yüklemek için bu Linux dağıtımının paket yönetim aracını kullanın.

Zip Komutu ile ZIP Dosyası Nasıl Oluşturulur

Bir ZIP dosyası oluşturmak için şunu söylemeniz gerekir: zip arşiv dosyasının adı ve içine eklenecek dosyalar. Arşiv adına “.zip” uzantısını eklemenize gerek yoktur, ancak yaparsanız zarar vermez.

Adlı bir dosya oluşturmak için source_code.zip geçerli dizindeki tüm C kaynak kodu dosyalarını ve başlık dosyalarını içeren bu komutu kullanırsınız:

zip source_code *.c *.h

terminal penceresinde zip komutu

Her dosya eklendiği gibi listelenir. Dosyanın adı ve bu dosyada gerçekleştirilen sıkıştırma miktarı gösterilir.

terminal penceresindeki zip komutundan çıktı

Yeni ZIP arşivine bakarsanız, “.zip” dosya uzantısının tarafından otomatik olarak eklendiğini görebilirsiniz. zip.

ls -l source_code.zip

Terminal penceresindeki zip arşivinde ls

Çıktısını görmek istemiyorsanız zip ZIP dosyası oluşturulurken, -q (sessiz) seçeneği.

zip -q source_code *.c *.h

Terminal penceresinde -q sessiz seçenek

ZIP Dosyalarına Dizin Ekleme

ZIP dosyasına alt dizinler eklemek için -r (özyinelemeli) seçeneğini belirleyin ve komut satırına alt dizinin adını ekleyin. Daha önce olduğu gibi bir ZIP dosyası oluşturmak ve ayrıca arşiv alt dizinini eklemek için bu komutu kullanın.

zip -r -q source_code archive/ *.c *.h

-r terminal penceresinde özyinelemeli seçenek

Oluşturduğunuz ZIP dosyasından dosyaları ayıklayacak kişiye dikkat etmek için, içinde bir dizinde bulunan dosyalarla ZIP dosyaları oluşturmak genellikle kibar olur. ZIP dosyasını alan kişi dosyayı çıkardığında, tüm dosyalar bilgisayarlarındaki bir dizine düzgün bir şekilde yerleştirilir.

Aşağıdaki komutta, work dizin ve tüm alt dizinler. Bu komutun Ana Dizinwork Klasör.

zip -r -q source_code work/

iş dizinini bir terminal penceresine sıkıştırmak

Sıkıştırma Seviyesini Ayarlama

ZIP arşivine eklendikçe, dosyalara ne kadar sıkıştırma uygulanacağını ayarlayabilirsiniz. Aralık 0 ila 9 arasındadır, 0 hiç sıkıştırma değildir. Sıkıştırma ne kadar yüksek olursa ZIP dosyası oluşturmak o kadar uzun sürer. Orta büyüklükte ZIP dosyaları için, zaman farkı önemli bir ceza değildir. Ancak, mütevazı boyutta ZIP dosyaları için, varsayılan sıkıştırma (seviye 6) muhtemelen yeterince iyidir.

Almak zip belirli bir sıkıştırma düzeyini kullanmak için, sayıyı komut satırında seçenek olarak “-” ile aşağıdaki gibi iletin:

zip -0 -r -q source_code work/

Terminal penceresinde -0 sıkıştırma seçeneği

Varsayılan sıkıştırma seviyesi 6'dır. -6 seçeneğini, ancak yaparsanız zarar vermez.

zip -r -q source_code work/

terminal penceresinde seviye 6 sıkıştırma

Maksimum sıkıştırma seviyesi seviye 9'dur.

zip -9 -r -q source_code work/

Terminal penceresinde -9 sıkıştırma

Burada arşivlenen dosya ve dizinlerin seçimiyle, sıkıştırma yok (seviye 0) ile varsayılan sıkıştırma (seviye 6) arasındaki fark 400K'dır. Varsayılan sıkıştırma ile en yüksek sıkıştırma düzeyi (düzey 9) arasındaki fark yalnızca 4K'dır.

Çok fazla görünmeyebilir, ancak yüzlerce, hatta binlerce dosya içeren arşivler için, dosya başına az miktarda ekstra sıkıştırma, yerden tasarruf etmenizi sağlayabilir.

ZIP Dosyalarına Parola Ekleme

ZIP dosyalarına şifre eklemek kolaydır. Kullan -e (şifreleme) seçeneğini seçtiğinizde şifrenizi girmeniz ve doğrulama için yeniden girmeniz istenir.

zip -e -r -q source_code work/

Terminal penceresindeki zip dosyalarına parola ekleme

Bir ZIP Dosyasını unzip Komutuyla Açma

Dosyaları bir ZIP dosyasından ayıklamak için, unzip komutunu kullanın ve ZIP dosyasının adını girin. Unutmayın yapmak “.zip” uzantısını sağlamanız gerekir.

unzip source_code.zip

terminal penceresindeki unzip komutu

Dosyalar çıkarılırken terminal penceresine listelenir.

terminal penceresinde unzip çıkışı

ZIP dosyaları, dosya sahipliğinin ayrıntılarını taşımaz. Çıkarılan tüm dosyaların sahibi, onları ayıklayan kullanıcıya ayarlanmıştır.

Tıpkı zip, unzip var -q (sessiz) seçeneği ile dosyalar çıkarılırken dosya listesini görmenize gerek kalmaz.

unzip -q source_code.zip

terminal penceresinde unzip -q seçeneği

Hedef Dizine Dosya Çıkarma

Belirli bir dizinde dosyaların ayıklanması için, -d (dizin) seçeneğini belirleyin ve arşivin çıkarılmasını istediğiniz dizinin yolunu belirtin.

unzip -q source_code.zip -d ./development

terminal penceresindeki bir hedef dizine sıkıştırmayı açma

Şifre Korumalı ZIP Dosyalarını Çıkarın

Parola ile bir ZIP dosyası oluşturulduysa, unzip sizden şifreyi soracaktır. Doğru şifreyi girmezseniz, unzip dosyaları ayıklamaz.

unzip -q source_code.zip

terminal penceresinde şifre komutuyla aç

Parolanızın başkaları tarafından görülmesini veya komut geçmişinizde saklanmasını umursamıyorsanız, parolayı komut satırında -P (şifre) seçeneğini seçin. (Büyük bir “P.” harfi kullanmalısınız)

unzip -P fifty.treacle.cutlass -q source_code.zip

terminal penceresinde şifre seçeneği ile açma

Dosyaları Hariç Tutma

Belirli bir dosyayı veya dosya grubunu çıkarmak istemiyorsanız, -x (hariç tut) seçeneğini tıklayın. Bu örnekte, “.h” uzantısıyla bitenlerin dışındaki tüm dosyaları ayıklamak istiyoruz.

unzip -q source_code.zip -x *.h

terminal penceresindeki çıkartma seçeneğini açma

Dosyaların Üzerine Yazma

Bir arşivi çıkardığınızı ancak ayıklanan dosyaların birkaçını yanlışlıkla sildiğinizi varsayalım.

Bunun için hızlı bir düzeltme dosyaları bir kez daha ayıklamak olacaktır. Ancak ZIP dosyasını daha önce olduğu gibi aynı dizinde ayıklamaya çalışırsanız, unzip dosyaların üzerine yazma ile ilgili bir karar vermenizi isteyecektir. Aşağıdaki yanıtlardan birini bekler.

Dışında r (yeniden adlandır) yanıtı varsa, bu yanıtlar büyük / küçük harfe duyarlıdır.

  • y: Evet, bu dosyanın üzerine yaz
  • n: Hayır, bu dosyanın üzerine yazma
  • A: Tümü, tüm dosyaların üzerine yaz
  • K: Hiçbiri, dosyaların hiçbirinin üzerine yaz
  • r: Yeniden adlandırın, bu dosyayı ayıklayın ancak yeni bir ad verin. Yeni bir ad girmeniz istenir.

terminal penceresindeki istemlerin üzerine yaz

Zorlamak unzip varolan dosyaların üzerine yazmak için -o (üzerine yazma) seçeneği.

unzip -o -q source_code.zip

terminal penceresindeki üzerine yazma seçeneği

Eksik dosyaları değiştirmenin en etkili yolu, unzip arşivdeki tüm dosyaları yalnızca değil hedef dizinde. Bunu yapmak için, -n (asla üzerine yazma) seçeneğini kullanmayın.

unzip -n source_code.zip

terminal penceresinde -n asla üzerine yazma seçeneği ile sıkıştırmayı aç

ZIP Dosyasının İçine Bakma

Bir ZIP dosyasının içindeki dosyaları çıkarmadan önce görmek genellikle yararlı ve öğreticidir. Bunu ile yapabilirsiniz -l (liste arşivi) seçeneği. Borulu less çıktıyı yönetilebilir yapmak için.

unzip -l source_code.zip | less

terminal penceresinde listeyi aç

Çıktı ZIP dosyasındaki dizinleri ve dosyaları, uzunluklarını ve arşive eklendikleri saat ve tarihi gösterir. Çıkmak için “q” ya basın less.

arşiv çıktısını bir terminal penceresinde listele

Göreceğimiz gibi, farklı türdeki bilgileri veren bir ZIP dosyasının içine bakmanın başka yolları da vardır.

Zipcloak Komutuyla Parola Ekleme

Bir ZIP dosyası oluşturduysanız ancak bir şifre eklemeyi unuttuysanız ne yapabilirsiniz? Hızlı bir şekilde kullanarak ZIP dosyasına bir şifre ekleyebilirsiniz zipcloak Komut. ZIP dosyasının adını komut satırına iletin. Bir parola girmeniz istenir. Şifreyi ikinci kez girerek doğrulamanız gerekir.

zipcloak source_code.zip

terminal penceresinde zipcloak

Zipdetails Komutu ile Dosya Ayrıntılarını Görüntüleme

zipdetails komutu size bir çok ZIP dosyası ile ilgili bilgi. Bu komutun verebileceği çıktı miktarını işlemenin tek mantıklı yolu, less .

zipdetails source_code.zip | less

terminal penceresinde zipdetails komutu

ZIP dosyası parola korumalı olsa bile bilgilerin dosya adları içereceğini unutmayın. Bu tür bilgiler ZIP dosyasında meta veri olarak saklanır ve şifrelenmiş verilerin bir parçası değildir.

terminal penceresinde zipdetails çıktısı

Zipgrep Komutuyla Dosyanın İçinde Ara

zipgrep komutu aramanıza izin verir dosyaların içinde bir ZIP dosyasında. Aşağıdaki örnekte, ZIP dosyasındaki hangi dosyaların içinde “keyval.h” metninin bulunduğunu bilmek istiyoruz.

zipgrep keyval.h source_code.zip

terminal penceresindeki zipgrep komutu

Dosyaların slang.c ve getval.c “keyval.h” dizesini içerir. Ayrıca ZIP dosyasındaki farklı dizinlerde bu dosyaların her birinin iki kopyası olduğunu görebiliriz.

Zipinfo Komutu ile Bilgileri Görüntüleme

zipinfo command size bir ZIP dosyasının içine bakmanın başka bir yolunu sunar. Daha önce olduğu gibi, çıkışı less.

zipinfo source_code.zip | less

terminal penceresinde zipinfo komutu

Soldan sağa çıktı şunları gösterir:

  • Dosya izinleri
  • ZIP dosyasını oluşturmak için kullanılan aracın sürümü
  • Orijinal dosya boyutu
  • Bir dosya tanımlayıcı (aşağıda açıklanmıştır)
  • Sıkıştırma yöntemi (bu durumda deflasyon)
  • Veri ve zaman damgası
  • Dosyanın ve herhangi bir dizinin adı

Dosya tanımlayıcı iki karakterden oluşur. İlk karakter bir metni veya ikili dosyayı belirtmek için bir “t” veya “b” olacaktır. Büyük harfse, dosya şifrelenir. İkinci karakter dört karakterden biri olabilir. Bu karakter, bu dosya için ne tür meta veri içerdiğini gösterir: yok, genişletilmiş yerel üstbilgi, “ekstra alan” veya her ikisi.

  • -: Hiçbiri yoksa, karakter bir kısa çizgi olacaktır
  • l: genişletilmiş bir yerel başlık varsa ancak fazladan alan yoksa
  • x: genişletilmiş yerel başlık yoksa ancak fazladan bir alan varsa
  • X: genişletilmiş bir yerel başlık varsa ve fazladan bir alan varsa

terminal penceresinde zipinfo çıkışı

Dosyayı zipsplit Komutuyla Böl

ZIP dosyasını başka birine göndermeniz gerekiyorsa, ancak boyut kısıtlamaları veya dosyanın iletilmesiyle ilgili sorunlar varsa, zipsplit orijinal ZIP dosyasını daha küçük ZIP dosyalarına bölme komutu.

-n (size) seçeneği, yeni ZIP dosyalarının her biri için bir maksimum boyut belirlemenize olanak tanır. Bu örnekte, source_code.zip dosya. Yeni ZIP dosyalarının hiçbirinin 100 KB'tan (102400 bayt) daha büyük olmasını istemiyoruz.

zipsplit -n 102400 source_code.zip

terminal penceresindeki zipsplit komutu

Seçtiğiniz boyut ZIP dosyasındaki dosyaların boyutundan küçük olamaz.

Bu komutları kullanarak kendi ZIP dosyalarınızı oluşturabilir, aldığınız ZIP dosyalarının sıkıştırmasını açabilir ve Linux terminalinden ayrılmadan üzerinde çeşitli işlemler yapabilirsiniz.

Related articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Stay Connected

0FansLike
0FollowersFollow
0FollowersFollow
0SubscribersSubscribe
spot_img

Latest posts