알파벳순으로 정렬된 수십억 줄의 텍스트가 포함된 텍스트 파일이 있다고 가정해 보겠습니다.
Bar=10
Foo=6
Naz=42
줄이 알파벳순으로 정렬되어 있고 찾고자 하는 줄이 다음으로 시작해야 한다는 것을 알고(파일에 이와 같은 수십억 개의 변수가 포함되어 있음) 가장 최적화된 방식으로 시작하는 줄을 가장 잘 검색할 수 있는 방법은 무엇입니까 Foo
? 검색이 더 쉽습니다) 특정 텍스트를 찾으시나요?
편집하다:
이 질문은 중복된 질문으로 간주될 수 있습니다.https://askubuntu.com/q/423886/10473
답은 look
그러한 연구를 수행할 수 있을 만큼 빠른 속도를 사용하는 것입니다.
답변1
이것이 당신이 말하는 볼륨에 어떻게 확장될지는 모르겠지만 다음을 포함하는 파일에서 작동하는 것 같습니다.
Foo=123
Foobar=646
Foobar=85489
Noo=8654
Noobar=8262
awk -F= '{if ($1 > "Foobar") { exit } ; if ($1 == "Foobar") { print $0 } }' sorted.txt
이것은 단지 개념 증명일 뿐입니다. 일치시키려는 용어가 전달되도록 조정하는 것은 간단한 문제입니다.