Giriş
gzip ve zip farklı şeyler. zip her dosyayı tek başına sıkıştırır ve arşive ekler. Arşivden tek bir dosyayı çıkartmak daha kolay. Açıklaması şöyle
In ZIP files, the individual files are compressed and then added to the archive. When you want to pull a single file from a ZIP, it is simply extracted, then decompressed. With GZIP, the whole file needs to be decompressed before you can extract the file you want from the archive. When pulling a 1MB file from a 10GB archive, it is quite clear that it would take a lot longer in GZIP, than in ZIP.
Buna karşılık gzip dosyalarının nihai boyutu daha küçük oluyor. Açıklaması şöyle
GZIP’s disadvantage in how it operates, is also responsible for GZIP’s advantage. Since the compression algorithm in GZIP compresses one large file instead of multiple smaller ones, it can take advantage of the redundancy in the files to reduce the file size even further. If you archive and compress 10 identical files with ZIP and GZIP, the ZIP file would be over 10 times bigger than the resulting GZIP file.
Kullanım
Kısaca şöyle yaparız
zip Compressed.zip File1.txt File2.txt File3.txt MyFolder
-A seçeneği - adjust suffix
Eğer zip dosyasına uzantı vermezsek .zip uzantısı otomatik verilir. Bunu engellemek için kullanılır.
Örnek
Şöyle yaparız.
Açıklaması şöyle.
Elimizde şöyle bir yapı olsun.
Örnek
Şöyle yaparız
Şöyle yaparız.
update anlamına gelir. Açıklaması şöyle
zip dosyasına yeni bir şey eklemek için şöyle yaparız.
Şöyle yaparız.
Eğer zip dosyasına uzantı vermezsek .zip uzantısı otomatik verilir. Bunu engellemek için kullanılır.
Örnek
Şöyle yaparız.
zip -Ar archive directory/
-d seçeneği
delete anlamına gelir. Şöyle yaparız. log4j ise başlayan tüm jar dosyalarından belirtilen dosyayı siler.
zip -q -d log4j-*.jar org/apache/log4j/net/JMSAppender.class
-j seçeneği
Store just the name of a saved file (junk the path), and do not store directory names. By default, zip will store the full path (relative to the current directory).
.
├── d0
├── f0
├── f1
│ └── d1
└── f2
└── f3
├── d2
├── d3
└── d4
Dizin yapısını almadan sadece dosyaları zipkemek için şöyle yaparız.zip -j myfiles d0 f1/d1 f2/f3/d4
Çıktı olarak şunu alırız..
├── d0
├── d1
└── d4
-r seçeneği - Dizin için kullanılırÖrnek
Şöyle yaparız
zip -r archive.zip directory/
ÖrnekŞöyle yaparız.
zip -r myfiles.zip *
-u seçeneği - update zip fileupdate anlamına gelir. Açıklaması şöyle
update (-u)
Update existing entries if newer on the file system and add new files.
If the archive does not exist issue warning then create a new archive.
Örnek
zip dosyasına yeni bir şey eklemek için şöyle yaparız.
zip -u existing.zip file.txt
ÖrnekŞöyle yaparız.
for z in *.zip; do
zip -u "$z" file.txt
done
Hiç yorum yok:
Yorum Gönder