spot_img
Tuesday, September 17, 2024
spot_img
HomeTechBilgi TeknolojisiLinux gzip, gunzip ve zcat komutları

Linux gzip, gunzip ve zcat komutları

-

Linux gzip, gunzip ve zcat komutları

Unix benzeri işletim sistemlerinde, gzip komutu GZIP arşivlerinden veri oluşturur, listeler, değiştirir ve ayıklar.

gunzip komutu, verileri GZIP arşivlerinden çıkarır.

zcat komutu, GZIP arşivlerinin içeriğini yazdırır.

Açıklama

Gzip, Lempel-Ziv kodlamasını (LZ77) kullanarak adlandırılmış dosyaların boyutunu küçültür. Mümkün olduğunda, her dosya aynı sahiplik modları, erişim ve değişiklik süreleri korunurken .gz uzantılı bir dosyayla değiştirilir. (Varsayılan uzantı VMS için -gz, MS-DOS, OS/2 FAT, Windows NT FAT ve Atari için z’dir.) Hiçbir dosya belirtilmemişse veya bir dosya adı “-” ise, standart girdi sıkıştırılır. standart çıktı. gzip yalnızca normal dosyaları sıkıştırmaya çalışır. Özellikle sembolik bağları yok sayar.

Sıkıştırılmış dosya adı, dosya sistemi için çok uzunsa, gzip onu kısaltır. gzip, dosya adının yalnızca üç karakterden uzun olan kısımlarını kesmeye çalışır. (Bir kısım noktalarla sınırlandırılmıştır.) Ad yalnızca küçük kısımlardan oluşuyorsa, en uzun kısımlar kesilir. Örneğin, dosya adları 14 karakterle sınırlıysa, gzip.msdos.exe, gzi.msd.exe.gz olarak sıkıştırılır. Dosya adı uzunluğu sınırı olmayan sistemlerde adlar kesilmez.

Varsayılan olarak gzip, orijinal dosya adını ve zaman damgasını sıkıştırılmış dosyada tutar. Bunlar, -N seçeneğiyle dosyanın sıkıştırılması sırasında kullanılır. Bu, sıkıştırılmış dosya adı kesildiğinde veya bir dosya aktarımından sonra zaman damgası korunmadığında kullanışlıdır.

Sıkıştırılmış dosyalar, gzip -d veya gunzip veya zcat kullanılarak orijinal biçimlerine geri yüklenebilir. Sıkıştırılmış dosyaya kaydedilen orijinal ad, dosya sistemine uygun değilse, yasal hale getirmek için orijinalinden yeni bir ad oluşturulur.

gunzip komut satırındaki dosyaların bir listesini alır ve adı .gz, -gz, .z, -z veya _z ile biten ve doğru sihirli sayı ile başlayan her dosyayı, orijinal uzantı. gunzip ayrıca .tgz ve .taz özel uzantılarını sırasıyla .tar.gz ve .tar.Z kısayolları olarak tanır. Sıkıştırırken, gzip, .tar uzantılı bir dosyayı kesmek yerine gerekirse .tgz uzantısını kullanır.

gunzip şu anda gzip, zip, sıkıştırma, sıkıştırma -H veya paket ile oluşturulan dosyaları açabilir. Giriş formatının tespiti otomatiktir. İlk iki formatı kullanırken gunzip, 32 bitlik bir CRC’yi kontrol eder. Paket için, gunzip sıkıştırılmamış uzunluğu kontrol eder. Standart sıkıştırma formatı, tutarlılık kontrollerine izin verecek şekilde tasarlanmamıştır. Ancak, gunzip bazen bozuk bir .Z dosyasını algılayabilir. Bir .Z dosyasını açarken bir hata alırsanız, standart açmanın şikayet etmemesi nedeniyle .Z dosyasının doğru olduğunu varsaymayın. Bu genellikle standart açmanın girdisini kontrol etmediğini ve mutlu bir şekilde çöp çıktısı oluşturduğunu gösterir. SCO sıkıştırması -H formatı (lzh sıkıştırma yöntemi) bir CRC içermez, ancak bazı tutarlılık kontrollerine de izin verir.

Zip tarafından oluşturulan dosyalar, yalnızca ‘deflation’ yöntemiyle sıkıştırılmış tek bir üyeye sahiplerse gzip tarafından açılabilir. Bu özellik yalnızca tar.zip dosyalarının tar.gz biçimine dönüştürülmesine yardımcı olmayı amaçlamaktadır. Tek üyeli bir zip dosyasını çıkarmak için gunzip

zcat, gunzip -c ile aynıdır. (Bazı sistemlerde, sıkıştırılacak orijinal bağlantıyı korumak için zcat gzcat olarak yüklenebilir.) zcat, komut satırındaki veya standart girdisindeki bir dosya listesini açar ve sıkıştırılmamış verileri standart çıktıya yazar. zcat, .gz son eki olsun ya da olmasın doğru sihirli numaraya sahip dosyaları açar.

gzip, zip ve PKZIP’de kullanılan Lempel-Ziv algoritmasını kullanır. Elde edilen sıkıştırma miktarı, girdinin boyutuna ve ortak alt dizilerin dağılımına bağlıdır. Tipik olarak, kaynak kodu veya İngilizce gibi metinler %60-70 oranında azaltılır. Sıkıştırma genellikle LZW (sıkıştırmada kullanıldığı gibi), Huffman kodlaması (pakette kullanıldığı gibi) veya uyarlanabilir Huffman kodlaması (kompakt) ile elde edilenden çok daha iyidir.

Sıkıştırılmış dosya orijinalinden biraz daha büyük olsa bile sıkıştırma her zaman gerçekleştirilir. En kötü durum genişletmesi, gzip dosya başlığı için birkaç bayt artı her 32 K blokta 5 bayt veya büyük dosyalar için %0.015’lik bir genişletme oranıdır. Kullanılan disk bloklarının gerçek sayısının neredeyse hiçbir zaman artmadığını ve gzip’in sıkıştırırken veya açarken dosyaların modunu, sahipliğini ve zaman damgalarını koruduğunu unutmayın.

Gzip dosya formatı, P. Deutsch, GZIP dosya formatı spesifikasyonu sürüm 4.3, https://www.ietf.org/rfc/rfc1952.txt, Internet RFC 1952’de (Mayıs 1996) belirtilmiştir. Zip deflasyon formatı, P. Deutsch, DEFLATE Sıkıştırılmış Veri Formatı Spesifikasyonu sürüm 1.3, https://www.ietf.org/rfc/rfc1951.txt, Internet RFC 1951’de (Mayıs 1996) belirtilmiştir.

Sözdizimi

gzip [ -acdfhlLnNrtvV19 ] [-S suffix] [ name ... ]
gunzip [ -acfhlLnNrtvV ] [-S suffix] [ name ... ]
zcat [ -fhLV ] [ name ... ]

Seçenekler

-a, –ascii

Ascii metin modu: yerel kuralları kullanarak satır sonlarını dönüştürün. Bu seçenek yalnızca bazı Unix olmayan sistemlerde desteklenir. MS-DOS için, CR LF, sıkıştırma sırasında LF’ye dönüştürülür ve açma sırasında LF, CR LF’ye dönüştürülür.

-C,
–stdout,
–to-stdout
Çıktıyı standart çıktıya yazın; orijinal dosyaları değiştirmeden saklayın. Birkaç girdi dosyası varsa, çıktı bağımsız olarak sıkıştırılmış üyelerden oluşan bir diziden oluşur. Daha iyi sıkıştırma elde etmek için, tüm girdi dosyalarını sıkıştırmadan önce birleştirin.
-NS,
— sıkıştırmayı aç,
–açmak
Sıkıştırmayı aç.
-f, –kuvvet Dosyanın birden fazla bağlantısı olsa veya ilgili dosya zaten mevcut olsa veya sıkıştırılmış veri bir terminalden okunmuş veya bir terminale yazılmış olsa bile sıkıştırmayı veya açmayı zorlayın. Girdi verileri gzip tarafından tanınan bir biçimde değilse ve –stdout seçeneği de verilmişse, girdi verilerini değişiklik yapmadan standart çıktıya kopyalayın: zcat’in cat gibi davranmasına izin verin. -f verilmezse ve arka planda çalışmazken, gzip mevcut bir dosyanın üzerine yazıp yazılmayacağını doğrulamak ister.
-h, –yardım Bir yardım ekranı görüntüleyin ve çıkın.
-l, –liste Her sıkıştırılmış dosya için aşağıdaki alanları listeleyin:

sıkıştırılmış boyut: sıkıştırılmış dosyanın boyutu;

sıkıştırılmamış boyut: sıkıştırılmamış dosyanın boyutu;

oran: sıkıştırma oranı (bilinmiyorsa %0,0);

sıkıştırılmamış_adı: sıkıştırılmamış dosyanın adı.

Sıkıştırılmış .Z dosyaları gibi gzip formatında olmayan dosyalar için sıkıştırılmamış boyut -1 olarak verilir. Böyle bir dosyanın sıkıştırılmamış boyutunu elde etmek için şunları kullanabilirsiniz:

zcat dosyası.Z | wc -c

–verbose seçeneğiyle birlikte aşağıdaki alanlar da görüntülenir:

yöntem: sıkıştırma yöntemi;

crc: sıkıştırılmamış verilerin 32-bit CRC’si;

tarih ve saat: sıkıştırılmamış dosya için zaman damgası.

Şu anda desteklenen sıkıştırma yöntemleri söndürme, sıkıştırma, lzh (SCO sıkıştırma -H) ve paketlemedir. crc, gzip formatında olmayan bir dosya için ffffffff olarak verilir.

–name ile, sıkıştırılmamış ad, tarih ve saat, varsa sıkıştırılmış dosyada depolananlardır.

–verbose ile, bazı boyutlar bilinmiyorsa, tüm dosyalar için boyut toplamları ve sıkıştırma oranı da görüntülenir. –quiet ile başlık ve toplam satırları görüntülenmez.

-L, –lisans Gzip lisansını görüntüleyin ve çıkın.
-n, –isimsiz Sıkıştırırken, varsayılan olarak orijinal dosya adını ve zaman damgasını kaydetmeyin. (Adın kesilmesi gerekiyorsa, orijinal ad her zaman kaydedilir.) Sıkıştırılmış dosyayı açarken, varsa orijinal dosya adını geri yüklemeyin (sıkıştırılmış dosya adından yalnızca gzip son ekini kaldırın) ve varsa orijinal zaman damgasını geri yüklemeyin ( sıkıştırılmış dosyadan kopyalayın). Bu seçenek, sıkıştırmayı açarken varsayılandır.
-N, –isim Sıkıştırırken her zaman orijinal dosya adını ve zaman damgasını kaydedin; bu varsayılandır. Sıkıştırmayı açarken, varsa orijinal dosya adını ve zaman damgasını geri yükleyin. Bu seçenek, dosya adı uzunluğu sınırı olan veya bir dosya aktarımından sonra zaman damgasının kaybolduğu sistemlerde kullanışlıdır.
-q, –sessiz Tüm uyarıları bastırın.
-r, –özyinelemeli Dizin yapısını yinelemeli olarak gezin. Komut satırında belirtilen dosya adlarından herhangi biri dizinlerse, gzip dizine iner ve orada bulduğu tüm dosyaları sıkıştırır (veya gunzip durumunda bunları açar).

-S .suf, –sonek .suf

Sıkıştırırken, .gz yerine .suf son ekini kullanın. Boş olmayan herhangi bir son ek verilebilir, ancak dosyalar başka sistemlere aktarılırken karışıklığı önlemek için .z ve .gz dışındaki son eklerden kaçınılmalıdır. Sıkıştırılmış dosyayı açarken, bir girdi dosyası adından bir çıktı dosyası adı türetirken denenecek son ekler listesinin başına .suf ekleyin.
-t, –test Ölçek. Sıkıştırılmış dosya bütünlüğünü kontrol edin.
-v, –ayrıntılı ayrıntılı. Sıkıştırılmış veya açılmış her dosya için adı ve yüzde azaltmayı görüntüleyin.
-V, –versiyon Sürüm. Sürüm numarasını ve derleme seçeneklerini görüntüleyin ve ardından çıkın.
-#, –hızlı, –en iyi Sıkıştırma hızını belirtilen # rakamını kullanarak düzenleyin; burada (örneğin) -1 veya –fast en hızlı sıkıştırma yöntemini (daha az sıkıştırma) ve -9 veya –best en yavaş sıkıştırma yöntemini (en iyi sıkıştırma) belirtir. Varsayılan sıkıştırma seviyesi -6’dır (yani, hız pahasına yüksek sıkıştırmaya eğilimli).

Gelişmiş kullanım

Birden çok sıkıştırılmış dosya birleştirilebilir. Bu durumda gunzip, tüm üyeleri bir kerede çıkaracaktır. Örneğin:

gzip -c file1 > foo.gz
gzip -c file2 >> foo.gz

…sonra,

gunzip -c foo

… şuna eşittir:

cat file1 file2

Bir .gz dosyasının bir üyesinin zarar görmesi durumunda, diğer üyeler hala kurtarılabilir (hasarlı üye kaldırılırsa). Ancak, tüm üyeleri aynı anda sıkıştırarak daha iyi sıkıştırma elde edebilirsiniz, örneğin:

cat file1 file2 | gzip > foo.gz

… şundan daha iyi sıkıştırır:

gzip -c file1 file2 > foo.gz

Daha iyi sıkıştırma elde etmek için birleştirilmiş dosyaları yeniden sıkıştırmak istiyorsanız, şunları yapın:

gzip -cd old.gz | gzip > new.gz

Sıkıştırılmış bir dosya birkaç üyeden oluşuyorsa, –list seçeneği tarafından bildirilen sıkıştırılmamış boyut ve CRC yalnızca son üye için geçerlidir. Tüm üyeler için sıkıştırılmamış boyuta ihtiyacınız varsa, şunları kullanabilirsiniz:

gzip -cd file.gz | wc -c

Üyelerin daha sonra bağımsız olarak çıkarılabilmesi için birden çok üyeli tek bir arşiv dosyası oluşturmak istiyorsanız, tar veya zip gibi bir arşivleyici kullanın. GNU tar, gzip’i şeffaf bir şekilde çağırmak için -z seçeneğini destekler. gzip, tar’ın yerine geçecek şekilde değil, tamamlayıcı olarak tasarlanmıştır.

Çevre

GZIP ortam değişkeni, gzip için bir dizi varsayılan seçeneği tutabilir. Bu seçenekler önce yorumlanır ve açık komut satırı parametreleri tarafından üzerlerine yazılabilir. Örneğin, sh için:

GZIP="-8v --name"; export GZIP

csh için:

setenv GZIP "-8v --name"

MS-DOS için:

set GZIP=-8v --name

Vax/VMS’de, programın çağrılması için simge seti ile bir çakışmayı önlemek için ortam değişkeninin adı GZIP_OPT’dir.

Örnekler

Sıkıştırma:

gzip file.txt

Yukarıdaki örnekte, bu komut, file.txt dosyasını geçerli dizinde file.txt.gz olarak sıkıştıracaktır.

Genişleme:

gunzip file.txt.gz

Yukarıdaki örnekte, komut, file.txt dosyasını file.txt.gz’den çıkarır.

Sıkıştırılmış bir zip dosyasının içeriğini çıkarmanız gerekirse, unzip komutunu da kullanabilirsiniz.

Not

Bir tarball (uzantı .tar.gz) ile uğraşıyorsanız, dosyaları çıkarmak için tar komutunu kullanın.

tar -zxvf myfile.tar.gz

Yukarıdaki örnekte, bu, myfile.tar.gz’nin içeriğini geçerli dizine çıkaracaktır.

Daha fazla örnek için yukarıdaki gelişmiş kullanıma bakın.

sıkıştır — Bir dosyayı veya dosyaları sıkıştırın.
pack — Dosyaları bir Huffman algoritması kullanarak sıkıştırın.
tar — Tar arşivlerinden dosya oluşturun, değiştirin, içeriğini listeleyin ve çıkarın.
unzip — Sıkıştırılmış dosyaları bir zip arşivinde listeleyin, test edin ve çıkarın.
zcat — Sıkıştırılmış dosyaların sıkıştırılmamış içeriğini yazdırın.

Related articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Stay Connected

0FansLike
0FollowersFollow
0FollowersFollow
0SubscribersSubscribe
Saçınızda Kahve Kullanmanın Faydaları Nelerdir?

Latest posts