Her satırda bir dize içeren büyük bir dosya var. Hızlı bir şekilde dosyada bir dize olup olmadığını belirlemek istiyorum. İdeal olarak, bu bir ikili kesme türü algoritması kullanılarak yapılacaktır.
Bazı Google çalışanları, bir ikili arama algoritması kullanarak belirli bir önekle başlayan tüm dizeleri bulmayı ve çıkarmayı vaat lookeden -bbayrağı içeren komutu ortaya çıkardı . Ne yazık ki, düzgün çalışmıyor gibi görünüyor ve dosyada olduğunu bildiğim dizeleri için null sonuçlar döndürür (eşdeğer greparama tarafından düzgün döndürülür ).
Herkes bu dosyayı verimli bir şekilde aramak için başka bir yardımcı program veya strateji biliyor mu?
look -bbir hata ile benim için başarısız oldu File too large. Sanırım her şeyi belleğe okumaya çalışıyor.
lookkomutun düzgün çalışması için sort -d , çünkü görünüm yerel ayarı görmezden geliyor ve sadece sabit kodlu sıralama gibi C kullanıyor, ben de bir hata açtım Bu kafa karıştırıcı davranış nedeniyle: bugzilla.kernel.org/show_bug.cgi?id=198011