Linux Altında Dosya Parçalamak

Mfyz 3 sene önce yazmış ancak daha gelişmişini yazayım dedim. Linux altında dosya parçalamak ve birleştirmek oldukça basit. Sadece elimizin biraz konsola değmesi gerekiyor. Kullanacağımız araç ise split ;)

Öncelikle şunu belirteyim, kullandığım sürüm 6.9, daha düşük bir sürümü kullanıyorsanız çalışmayabilir. Hani “neden çalıştıramadım?” diye comment girmeyesiniz diye söyledim :)

[~/tmp/split]> ls
Papa Roach – Between Angels And Insects.mp3

[~/tmp/split]> du -hs “Papa Roach – Between Angels And Insects.mp3”
3,7M Papa Roach – Between Angels And Insects.mp3

[~/tmp/split]> split -b 1m “Papa Roach – Between Angels And Insects.mp3” “Papa Roach – Between Angels And Insects.mp3.part_”

[~/tmp/split]> ls
Papa Roach – Between Angels And Insects.mp3
Papa Roach – Between Angels And Insects.mp3.part_aa
Papa Roach – Between Angels And Insects.mp3.part_ab
Papa Roach – Between Angels And Insects.mp3.part_ac
Papa Roach – Between Angels And Insects.mp3.part_ad

[~/tmp/split]> du -hs “Papa Roach – Between Angels And Insects.mp3.part_aa”
1,1M Papa Roach – Between Angels And Insects.mp3.part_aa

İşte bu kadar ;) Girilen parametreleri açıklayayım, daha fazlasını split –help ile öğrenebilirsiniz.

* Komutun genel kullanım şekli; split -b BYTE DOSYA ÇIKTI

* BYTE kısmına m (Megabyte) veya k (kilobyte) son ekini getirerek ne kadar büyüklükte bölmesini istediğimizi belirtebiliriz. Yukarıda dosyayı 1MB olarak bölmesini söyledim.

* DOSYA ise bölmek istediğimiz dosyadır.

* ÇIKTI kısmı da dosya bölündüğünde hangi ad ile çıktı alınmak isteniyorsa belirtilen parametredir. Bölme işleminin sonunda “aa, ab, ac … ba, bb, bc” gibi sonekler getirilir.

Dosyamızı böldük, peki nasıl birleştireceğiz? :) Bunun için cat kullanacağız. aa, ab, ac gibi sonekleri sırası ile okuyup bir dosyada birleştireceğiz.

$ cat foo_aa foo_ab foo_ac >> birleştir

gibi. Eğer 2 veya 3 tane bölünmüş dosyamız varsa yukarıdaki komutu rahatlıkla kullanabiliriz. Ancak 90MB büyüklüğündeki bir dosyayı 30 parçaya böldüğümüz zaman kullanılamayacaktır. Bu da ufak bir döngü ile halledebiliriz.

[~/tmp/split]> for i in *.part_*; do cat “$i” >> birlestir.mp3; done

[~/tmp/split]> du -hs birlestir.mp3
3,7M birlestir.mp3

Hepsi bu :)

2 thoughts on “Linux Altında Dosya Parçalamak

Onur Yerlikaya için bir cevap yazın Cevabı iptal et