Ben dd if=/dev/sda1 of=diskimage
bazı metin dosyalarını kurtarmak için gereken bir borked bölüm (düşünmek ) 30GB disk görüntüsü var . Veri oyma araçları foremost
sadece iyi tanımlanmış başlıklara sahip dosyalarda çalışır, yani düz metin dosyaları değil, bu yüzden iyi arkadaşımın üzerine düştüm strings
.
strings diskimage > diskstrings.txt
aslında istediğim metinle karıştırılmış, çoğunlukla yararsız şeyler bir dizi dizeleri içeren bir 3GB metin dosyası üretti.
Kabaların çoğu gerçekten uzun, kırılmamış anlamsız dizeler olma eğilimindedir. İlgilendiğim şeylerin 16 kb'den az olması garanti ediliyor, bu yüzden dosyayı satır uzunluğuna göre filtreleyeceğim. İşte bunu yapmak için kullandığım Python betiği:
infile = open ("infile.txt" ,"r");
outfile = open ("outfile.txt","w");
for line in infile:
if len(line) < 16384:
outfile.write(line)
infile.close()
outfile.close()
Ama ileride yararlanmak üzere bu işler: Herhangi büyülü tek satırlık büyüler (düşünmek var mıdır awk
, sed
hat uzunluğuna göre bir dosya filtre olurdu)?