grep(Global Regular Expression Printer) komutu siyah ekranın vazgeçilmezlerinden birisi, aradığınız dosyayı hızlı bulmak istiyorsanız şüphesiz kullanmanız gerekiyor. Fakat bu komutun daha farklı özelliklerininde bulunduğunu söyleyebiliriz.
Bugün bilgisayarımda yanlışlıkla sildiğim 2 text dosyasının hiç bir yedeği olmamasına rağmen nasıl kurtardığımı sizlere açıklayacağım.
İşin güzel tarafı bu yöntem herhangi bir biçimlendirme şekline(ext3,ext4,ntfs) bağlı kalmadan dosyayı kurtarmak kurtarmak gayet mümkün.
Bunun için ihtiyacınız olan şeyler:
- Zaman
- 1 adet kelime1 veya cümle.
Gelelim sistemimiz nasıl çalışıyor:
Aşağıdaki komut bilgisayarınızda o bölümde anahtar kelimeyi içeren dosyaları bulup alt alta yeni bir text dosyasına kopyalıyor.
Yapmamız gerekenler:
df veya fsck komutu ile çalıştığımız bölümü(partitionu) öğreniyoruz
-
1fsck
fsck from util-linux 2.25.2
e2fsck 1.42.12 (29-Aug-2014)
/dev/sda3 is mounted.
e2fsck: Cannot continue, aborting. -
1sudo grep -binary-files=text -A=YazıdanÖnceKaçSatr -B=YazıdanSonraKaçSatır 'ArayacağınızYazı' /dev/SizinBölümünüz > /Dosyayı/YazmakİstediğinizDizin/Hedef.txt
NOT!!
Bu komutun bir çok özelleştirmesi daha bulunmaktadır oradan istediklerinizi seçebilirsiniz.
Bu komutu yazdıktan sonra uzunca bir süre beklemeniz gerekiyor. Bu partitionun tamamını arayacağı için işlem uzun sürüyor.2
Daha sonra oluşturduğunuz Hedef.txt dosyasını herhangi bir metin editörü ile açın diyemeyeceğim çünkü dosya genellikle 100 MB’den büyük oluyor bu işlem için *nix sistemlerin vazgeçilmez editörlerinden biri olan vim veya vi ile açın.(Tabikide Emacs ile de bu iş yapılır müdavimlerine bunuda tavsiye edebilirim )
3. vi /Dosyayı/YazmakİstediğinizDizin/Hedef.txt
İşimize yarayacak kadar vi 🙂
/ ile istediğiniz kelimeyi tekrar arayın
n komutu ilede tekrarlanan ifadeler arasında ilerleyebilirsiniz.
Bulduğunuz verileri kopyalayın3.
Umarım işinize yarar.
Footnotes:
1 Kelime Özellikleri tercihen
- Bu kelime veya cümle her dosyada geçmeyen
- (,\/[]{}) gibi özel karakter içeren
- Mümkün olduğunca fazla harf içeren olması aramayı daha başarılı kılar.