man/archiving_and_compression
man · Arşivleme & Sıkıştırma

$ streamzip

Bölüm 1 · Arşivleme & Sıkıştırma

standart girdiden (`stdin`) bir zip dosyası oluşturur

Söz Dizimi

üretici | streamzip [seçenekler] | tüketici
üretici | streamzip [seçenekler] -zipfile=output.zip

Açıklama

Bu program veriyi standart girdiden (stdin) okur, bir zip kapsayıcısına sıkıştırır ve varsayılan olarak standart çıktıya (stdout) akışlı (streamed) bir zip dosyası yazar. Hiçbir geçici dosya oluşturulmaz.

Standart çıktıya (stdout) yazılan zip kapsayıcısının zorunlu olarak akış (streaming) biçiminde yazılması gerekir. Zip dosyalarını okuyan çoğu program akışlı bir zip dosyasıyla başa çıkabilir; ancak birlikte çalışabilirlik önemliyse ve iş akışınız zip dosyasını doğrudan diske yazmanıza izin veriyorsa, zipfile seçeneğini kullanarak akışlı olmayan bir zip dosyası oluşturabilirsiniz.

Seçenekler

  • -zip64
    Zip64 uyumlu bir zip kapsayıcısı oluşturur. Girdi 4 GB'tan büyükse bu seçeneği kullanın.

    Varsayılan olarak devre dışıdır.

  • -zipfile=F
    Zip kapsayıcısını F dosya adına yazar.

    Akışlı bir zip dosyası oluşturulmasını zorlamak için -stream seçeneğini kullanın.

  • -member-name=M
    Zip kapsayıcısındaki "dosyayı" adlandırmak için kullanılır.

    Varsayılan değer - karakteridir.

  • -stream
    Standart çıktıya (stdout) yazarken yoksayılır.

    -zipfile seçeneği belirtilmişse, bu seçeneğin eklenmesi akışlı bir zip dosyası oluşturulmasını tetikler.

    Varsayılan olarak standart çıktıya (stdout) yazarken her zaman etkindir; aksi takdirde devre dışıdır.

  • -method=M
    M yöntemini kullanarak sıkıştırır.

    Geçerli yöntem adları:

    • store: Sıkıştırma olmadan depolar.
    • deflate: Deflate sıkıştırmasını kullanır. Varsayılan değerdir.
    • bzip2: Bzip2 sıkıştırmasını kullanır.
    • lzma: LZMA sıkıştırmasını kullanır.
    • xz: xz sıkıştırmasını kullanır.
    • zstd: Zstandard sıkıştırmasını kullanır.

    LZMA sıkıştırmasının kullanılabilmesi için IO::Compress::Lzma paketinin yüklü olması gerekir.

    Zstd sıkıştırmasının kullanılabilmesi için IO::Compress::Zstd paketinin yüklü olması gerekir.

    Varsayılan değer deflate yöntemidir.

  • -0, -1, -2, -3, -4, -5, -6, -7, -8, -9
    deflate için sıkıştırma seviyesini ayarlar. Diğer tüm sıkıştırma yöntemleri için yoksayılır.

    -0 sıkıştırma olmadığı, -9 ise maksimum sıkıştırma anlamına gelir.

    Varsayılan değer 6 değeridir.

  • -version
    Sürüm numarasını gösterir.

  • -help
    Yardımı gösterir.

Örnekler

Standart girdiden (stdin) veri okuyarak bir zip dosyası oluşturur:

echo Lorem ipsum dolor sit | perl ./bin/streamzip > abcd.zip

Standart unzip aracıyla abcd.zip içeriğini kontrol eder:

unzip -l abcd.zip

Örnek çıktı:

Arşiv:  abcd.zip
  Uzunluk      Tarih    Saat    Ad
---------  ----------  -----   ----
       22  2021-01-08  19:45   -
---------                      -------
       22                      1 dosya

Name (Ad) alanının - olarak ayarlandığına dikkat edin. Bu, üye adının belirtilmediği birkaç zip aracı için varsayılan değerdir.

Dosyayı açıkça adlandırmak için -member-name seçeneğini kullanın:

echo Lorem ipsum dolor sit | perl ./bin/streamzip -member-name latin > abcd.zip
unzip -l abcd.zip

Örnek çıktı:

Arşiv:  abcd.zip
  Uzunluk      Tarih    Saat    Ad
---------  ----------  -----   ----
       22  2021-01-08  19:47   latin
---------                      -------
       22                      1 dosya

Ne Zaman Akışlı Bir Zip Dosyası Yazılmalı?

Akışlı bir zip dosyası, dosyada geriye veya ileriye doğru arama (seek) yapamadığınız durumlarda kullanışlıdır.

İyi bir örnek, dosya sisteminde geçici bir zip dosyası oluşturmaya gerek kalmadan bir web sunucusundan doğrudan sokete dinamik içerik sunduğunuz durumdur.

Benzer şekilde, iş akışınız Linux boru hattı (pipeline) komutlarını kullanıyorsa da geçerlidir.

Destek

Genel geri bildirimler, sorular ve hata raporları şuraya gönderilmelidir:

Yazar

Paul Marquess pmqs@cpan.org

Telif Hakkı

Telif Hakkı (c) 2019-2021 Paul Marquess. Tüm hakları saklıdır.

Bu program serbest bir yazılımdır; Perl'in kendisiyle aynı şartlar altında yeniden dağıtabilir ve/veya değiştirebilirsiniz.