Dosya Arşiv İşlemleri
Bu bölümde dosya arşivleme, sıkıştırma ve sıkıştırılmış olan dosya arşivlerini açma gibi işlemleri ele alacağız. Zaten bu kavramlar sizlere yabancı gelmemeli zira daha önce hangi işletim sistemini kullanmış olursanız olun öyle ya da böyle karşınıza çıkmıştır. Genellikle yüksek boyutlu dosyaların sıkıştırılmasında veya veri kaybı olmadan güvenli transfer yapabilmek için ve bunlar gibi pek çok sebep dolayasıyla arşiv dosyaları ile sıklıkla karşılaşıyoruz, karşılaşmaya da devam edeceğiz. Konumuza arşiv dosyalarını nasıl oluşturabileceğimizi öğrenerek başlayalım.
tar
tar
komutunun açılımı (Tape ARchive) şeklindedir. Bu komut bir veya birden fazla dosyayı tek bir forma sokarak arşivlenmiş duruma getirir. Örnekler üzerinden anlatıma devam edelim.
Masaüstünde yer alan ismi "metin" ile başlayan her şeyi metinler.tar şeklinde arşivlemek isteyelim. Bunun için komut satırına tar -cf metinler.tar metin*
yazmalıyız.
Kullandığımız komut bütününü tek tek izah edelim;
tar
(Tape ARchive) arşivleme işlevini yapan program.
-c
(create archive) parametresi joker *
yardımıyla dosya ismi ile başlayan her şeyi paketleyip dosyalar.tar isimli dosyaya yollar.
Kullandığımız -f
parametresi de hangi dosyaya yazılacağını belirtir.
Dosyaları tekrar açmak için tar -xf metinler.tar
komutunu kullanabiliriz. Veya açılan dosyaları konsol üzerinden takip etmek için v
parametresi kullanarak aynı işlemi gerçekleştirebiliriz.
Eğer arşivi başka bir klasöre çıkarmak istersek komutumuzu tar -xf metinler.tar -C hedef_klasör
şeklinde kullanabiliriz.
Görüldüğü gibi arşivin içerisindekiler, öncekilerden farklı olarak direk çalıştığımız dizine değil, belirtmiş olduğumuz hedef klasöre çıkarılmış oldu.
Arşivi çıkarmadan içerisindekileri görmek istersek tar -tf metinler.tar
komutunu kullanabiliriz.
Oluşturmuş olduğumuz arşive sonradan ekleme yapmak için -r
parametresini kullanabiliriz.
Hemen metinler.tar arşivine aynı dosya konumunda yer alan yeni isimli klasörü eklemeye çalışalım.
Başta ve sondaki arşivin durumunu karşılaştırdığımızda yeni isimli klasörün arşive eklenmiş olduğunu gördük.
tar
komutunun kullanım şekilleri elbetteki yukarıdaki anlatılanlar ile sınırlı değil. Ancak biz genel olarak sıklıkla karşılaşılan kullanım şekillerini ele almış olduk. Daha fazla bilgiye nasıl ulaşacağınızı biliyorsunuz.
gzip-bzip2
Biz daha önceki kısımlarda tar
komutu ile dosyaları sadece arşivlemiş, ancak sıkıştırma işlemi yapmamıştık. Şimdi ise gerektiğinde dosyaları sıkıştırmayı ve bu dosyaları açmayı göreceğiz.
Sıkıştırma işleminde iki temel araç kullanılıyor. Bunlar gzip
ve bzip2
araçları.
Masaüstünde yer alan dosyalardan örnek yapalım hemen. Ben "metin" adıyla başlayan dosyaları gzip
aracı ile sıkıştırmak için daha önceden de defalarca kullanmış olduğumuz *
joker karakterinin yardımıyla gzip metin*
komutunu veriyorum. Daha sonra aynı işlemi "isim" adı ile başlayan belgeler için bu defa bzip2
aracı yardımıyla bzip2 isim*
şeklinde sıkıştırarak gerçekleştiriyorum.
Sıkıştırdığımız dosyayı tekrar dışarı çıkarmak istersek komutu -d
parametresi ile birlikte kullanmamız gerekiyor.
Artık hem arşivleme hem de sıkıştırma işlemlerini ayrı ayrı gördükten sonra her ikisini de birlikte kullanma vakti geldi.
gzip
ile bzip2
arasında tar
komutu yardımı ile arşivleme işlemi yaparken ufak bir fark var. Bu fark gzip
ile arşivleme yaparken komutun czvf
şeklinde parametre almasıyla, bzip2
ile arşivleme işlemi yaparken aldığı parametrenin cjvf
olmasıdır. Bunun dışında kullanım şekilleri aynıdır.
Örnekler ile açıklayalım.
Her iki şekilde de "metin" isimli belgeleri bir arşiv içine almaya çalışalım. Sırasıyla bunu ilk olarak gzip
ile daha sonra ise bzip2
ile yapalım. Dosya adı verirken kullanılan tar.gz ve tar.bz2 uzantılarına dikkat edin aksi halde işlem hata verecektir.
Gördüğünüz gibi gzip
kullanırken parametre olarak czvf
verdik ve oluşturduğumuz dosyanın uzantısını da tar.gz şeklinde yaptık. Aynı şekilde bzip2
için ise cjvf
parametrelerini kullandık ve dosya adımızın uzantısı tar.bz2 şeklinde oldu. Daha önce de söylediğim gibi bu ayrıntılara dikkat etmezseniz işlem kaçınılmaz olarak başarısız olacaktır.
Sıkıştırmış olduğumuz arşivleri tekrar açmak için ise gzip
için xzvf
parametresi bzip2
için ise xjvf
parametresini kullanacağız.
Arşivler açılmış oldu. Eğer arşivi belirli bir konuma çıkarmak istersek daha önce de öğrenmiş olduğumuz şekilde -C
parametresi ile bu işlemi gerçekleştirebiliriz. Eğer -C
parametresi kullanmazsak arşiv içindekiler doğrudan belirttiğimiz konuma açılır. -C
parametresi hedef konuma arşivin ismi ile bir dosya oluşturur ve o dosya içerisine çıkarma işlemini yapar.
Daha önceden öğrendiğimiz işlemleri de aynı şekilde sıkıştırılmış arşiv dosyalarında da yapabiliyoruz. O yüzden aynı şeyleri burada tekrardan vermemiz anlamsız olur.
İlk başlarda akılda kalması, hatırlanması zor gelebilir ancak sizler de zamanla, kullana kullana bu komutlara alışacaksınız. Unuttuğunuz yerde zaten tekrar açıp bakabilirsiniz.
zcat-zgrep-bzcat-bzgrep
Daha önce dosya içeriklerini terminal üzerinden cat
komutu yardımı ile okumayı ve grep
komutu ile de arama yapmayı öğrenmiştik. Şimdi ki göreceğimiz komutlar ise, aynı işlemleri sıkıştırılmış dosyalar için yerine getiriyorlar. Zaten isimlerinden de bu işlevde oldukları anlaşılabiliyor.
gzip
ile sıkıştırılmış arşiv dosya içeriklerini zcat
ile okuruz. Aynı işlemi eğer bzip2
ile sıkıştırılmış dosyalar varsa bzcat
şeklinde gerçekleştirebiliriz.
Sıra geldi sıkıştırılmış dosyalar içerisinde arama yapmaya. gzip
ile sıkıştırılmış dosyalar için zgrep
kullanılırken bzip2
ile sıkıştırılmış dosyalar için bzgrep
komutunu kullanıyoruz.
zip-unzip
Son olarak da .zip uzantılı dosyaları nasıl oluşturabileceğimizi ve daha sonra oluşturduğumuz ..zip uzantılı dosyaları nasıl açabileceğimizi görelim.
Anlatıma .zip dosyası oluşturarak başlayalım.
Bunun için komutumuzu konsola zip dosya_adı.zip eklenecek_dosya
şeklinde giriyoruz.
Çıktıda yer alan "deflated" ifadesi dosyanın ne kadarının sıkıştırıldığını yüzdelik olarak bize veriyor. Ayrıca sarı alan ile işaretlenmiş kısıma bakarak; sıkıştırmış olduğumuz dosyanın boyutu ile dosyanın sıkıştırılmamış hali olan, orjinal dosyanın boyutu arasında oldukça fazla boyut farkı bulunduğunu gözlemleyebiliyoruz.
Eğer zip
komutu ile sıkıştırdığımız dosyayı açmak istersek .zip dosyalarını açma işlevindeki unzip
komutunu unzip dosya_adı.zip
şeklinde kullanabiliriz.
Konsolun bize sorduğu soru " bulunduğumuz dizinde aynı dosyadan bir tane daha var ne yapmak istersiniz? " gibi bir sorudur.
Alıştırmalar Hakkında
Öğrendiğiniz bilgilerin kalıcı olması için mutlaka bolca alıştırma yapmalısınız.Burada belirtilen alıştırmalar dışında da kendi kendinize özellikle de zorlandığınız konularda bol bol alıştırmalar yapın. Aksi halde öğrendiğiniz bilgiler kısa sürede unutulup gidecektir. Yani gerçekten öğrenmek istiyorsanız lütfen öğrendiğinizi hissede kadar alıştırmalar yapın.
tar
komutunu kullanarak birden fazla dosyayı tek bir arşiv içerisine alın.
tar
komutu ile arşive aldığınız dosyaları bulunduğunuz konuma çıkarın ve ls
komutu ile teyit edin.
tar
komutu ile arşive aldığınız dosyaları belirli bir hedef dizine çıkarın ve ilgili dizine giderek teyit edin.
Arşivi henüz açmadan arşivin içerisinde yer alan dosyaları konsol üzerinden görüntüleyin.
Var olan bir arşive yeni bir dosya ya da klasör eklemesi yapın.
bzip2
aracını kullanarak birkaç dosya ya da klasörü sıkıştırarak arşiv içerisine alın.
gzip
aracını kullanarak birkaç dosya ya da klasörü sıkıştırarak arşiv içerisine alın.
gzip
aracını kullanarak birkaç dosya ya da klasörü sıkıştırarak arşiv içerisine alın.
bzip2
aracı ile tar
komutu yardımı ile arşivleme işlemi yapın.
gzip
aracı ile tar
komutu yardımı ile arşivleme işlemi yapın.
tar.gz
ve tar.bz2
olarak sıkıştırmış olduğunuz arşivleri bulunduğunuz konuma çıkarın.
tar.gz
ve tar.bz2
olarak sıkıştırmış olduğunuz arşivleri /Documents
dizinine çıkarın.
gzip
ile sıkıştırmış olduğunuz arşiv dosya içeriklerini konsol üzerinden okuyun.
bzip2
ile sıkıştırmış olduğunuz arşiv dosya içeriklerini konsol üzerinden okuyun.
gzip
ile sıkıştırmış olduğunuz arşiv dosyasının içerisinde konsol üzerinden anahtar kelime(herhangi bir ifadeyi) araması yapın.
bzip2
ile sıkıştırmış olduğunuz arşiv dosyasının içerisinde konsol üzerinden anahtar kelime(herhangi bir ifadeyi) araması yapın.
zip
ile dosyaları arşivleyin ve daha sonra arşivlemiş olduğunuz dosyaları .zip
içerisinden çıkarın.
Geri Bildirimde Bulunun
Sizlere daha verimli bir kaynak sunabilmemiz için, uygulamada veya dokümantasyonlarda yer alan tüm hata ve eksiklerimizi bize bildirebilirsiniz.