300.000 satırın üzerinde FILE_A ve 30 milyon satırın üzerinde FILE_B var. FILE_B içinde FILE_A'daki her satırı açığa çıkaran ve grep sonucunu yeni bir dosyaya yazan bir Bash betiği oluşturdum .
Tüm bu süreç 5 saatten fazla sürüyor.
Senaryomun performansını nasıl artırabilirim?
Ben grep -F -m 1
grep komutu olarak kullanıyorum . FILE_A şöyle görünür:
123456789
123455321
ve FILE_B şöyle:
123456789,123456789,730025400149993,
123455321,123455321,730025400126097,
Bash ile while
FILE_A'da bir sonraki satırı seçip FILE_B'de karşılıyor bir döngü var. Desen FILE_B içinde bulunduğunda onu sonuç.txt dosyasına yazarım.
while read -r line; do
grep -F -m1 $line 30MFile
done < 300KFile