Eskiden sadece tar vardı. Bir klasörü tar ile sıkıştırmak için (tar paketi ile gelen)
tar -czvf compressed.tar.gz /home/user/dir1
Burada
-c : Create (oluştur)
-z : zip (sıkıştır)
-v : verbose (dosya ayrıntılarını görüntüle)
-f : Filename (sıkıştırılmış dosya adını belirt)
Birden fazla klasör boşluk bırakarak ard arda yazılabilir.
Hariç tutulmak istenen klasör veya dosyalar (* wildcard karakteri kullanılarak) --exclude parametresiyle verilebilir.
tar -czvf compressed.tar.gz /home/usr/dir1 --exclude=/home/user/dosya1.txt --exclude=*.mp4 --exclude /home/user/Download
Bu örneklerdeki -z parametresi gzip sıkıştırma yöntemini kullanıyordu. Yeni bir sıkıştırma yöntemi olan bzip2'yi kullanmak (daha fazla sıkıştırma oranı için) -z'yi -j ile değiştirmek gerek. Örneğin
tar -cjvf compressed.tar.bzip2 /home/user/dir1
Sıkıştırılmış dosyayı açmak (ayıklamak/çıkarmak) için ise -c anahtarını -x (eXtract) ile değiştirmek gerek:
tar -xzvf compressed.tar.gz
Bu komut mevcut klasörün içine çıkartır. Başka bir klasöre çıkartmak için -C (büyük C) anahtarı kullanılır:
tar -xzvf compressed.tar.gz -C /tmp
tar komutundan başka bir de zip komutu var. Bu komut ile tek bir dosyayı sıkıştırma yapmak için (zip paketi ile gelen)
zip compressed.zip /home/user/file1.txt
bir klasörü, altındaki tüm içerik ile birlikte sıkıştırmak için ise
zip -r -q -9 compressed.zip /home/user/Documents/
kullanılabilir. Burada
-r : Recurse (alt klasörleri de dahil et)
-q : Quiet (sıkıştırılan her içeriği yazma)
-9 : En yüksek sıkıştırma oranını kullan (-0 en düşük, -9 en yüksek sıkıştırma oranı)
Sıkıştırılan dosyaya bir parola vermek için -e anahtarı kullanılabilir. Bu anahtardan sonra parola sorulur.
zip ile sıkıştırılmış dosyaları açmak için ise unzip komutunu kullanmak gerek (unzip paketi ile gelen):
unzip compressed.zip
Burada kullanılabilecek bazı anahtarlar şöyle:
-q : Quiet (ayrıntıları yazma)
-d <klasör> : çıkarılacak konumu belirt
-P <parola> : Büyük 'P' harfi ile parola korumalı dosya için parola belirt (DİKKAT: Komut geçmişinde görüntülenecek!)
-x <*> : eXlude (hariç tut)
-l : Çıkarmadan sadece zip dosyasının içeriğindeki dosyaları görüntüle
Bazı bonus komutlar şöyle (bunlar da zip paketi ile gelir):
zipcloak compressed.zip # varolan bir dosyayı parola korumalı yap
zipdetail compressed.zip # sıkıştırılmış dosya ayrıntılarını görüntüle
zipinfo compressed.zip # sıkıştırılmış dosya ayrıntılarını görüntüle
zipgrep kelime compressed.zip # sıkışmış dosyaların içeriğinde anahtar kelime araması yap
zipsplit -n 1024000 compressed.zip # sıkıştırılmış dosyayı 102400 byte (1 MB) bölümlere böl
Sıkıştırılmış dosyaların içinde işlem yapmayı sağlayan şu komutlar da var:
tar -tvf compressed.gz # gz uzantılı dosyanın içindeki dosyaları görüntüle
gzip -l compressed.gz # gz uzantılı dosyanın içindeki dosyaları görüntüle
tar -tJf file.tar.xz # xz uzantılı dosyanın içindeki dosyaları görüntüle
7z l compressed.7z # 7z uzantılı dosyanın içindeki dosyaları görüntüle
gzip paketi ile gelen aşağıdaki komutlar da var:
zcat compressed.gz # cat komutunun sıkıştırılmış dosyalar için olanı
zgrep kelime dosya.gz # grep komutunun sıkıştırılmış dosyalar için olanı
Son zamanlarda daha da fazla sıkıştırma oranı veren 7zip de kullanılabilir. Windows için yüklenen 7-zip paketinde de 7z komutu aynı işlemleri yapabilir. Bir klasörü 7zip ile sıkıştırmak için:
7z a compressed.7z /home/user/log_file
çıkartmak için de
7z e compressed.7z -o /home/user/
Tabi Windows'da powershell ile gelen Compress-Archive ve Expand-Archive komutları da kullanılabilir:
Compress-Archive -Path log_file -DestinationPath compressed.zip
Açmak için de
Expand-Archive -Path D:\archive\compressed.zip -DestinationPath C:\Users\fethi\
kullanılabilir.
Hiç yorum yok:
Yorum Gönder