대용량 디렉터리 파일에서 특정 문자열을 확인하는 방법

대용량 디렉터리 파일에서 특정 문자열을 확인하는 방법

나는 상당히 큰 디렉토리를 가지고 있으며 파일에서 특정 문자열이 나타나는지 검색하는 것을 좋아합니다. 약 30개의 문자열 목록이 있고 내 디렉토리는 1.3G입니다. 나는 모든 문자열을 다음과 같은 파일에 추가하려고 시도했습니다.

strings

그러다가 사용했는데 grep -r -f strings . > grepresults 시간이 오래 걸렸어요. 나는 파일을 살펴보았는데 grepresults내용이 내 문자열과 일치하지 않는 것 같다는 점을 제외하고는 불평하지 않을 것입니다. 내가 뭔가 잘못했어요. 내 명령의 결과를 즉시 확인하고 내가 원하는 결과인지 확인하려면 어떻게 해야 합니까? 그러면 실행할 수 있습니다. 알려주시면 현재 보내고 있는 내용의 샘플을 게시해 드리겠습니다.

포스팅을 했는데 grep -rFf foo -o관련 없는 콘텐츠가 잔뜩 있는 것 같았습니다. stdout을 사용하는 방법을 모르겠습니다. 더 자세한 설명을 제공해 주실 수 있나요?

답변1

(편집에서 추출된 답변)

밤새도록 실행하여 검색 결과를 얻었습니다. 내가 사용하는 명령은 다음과 같습니다

@ubuntu:~/WORKING_DIRECTORY/LC_ALL=C fgrep -rFf bar > ~/myfile

myfile위 명령에서 호출된 이동 결과 파일이 확실히 도움이 됩니다.

또한 파일의 문자열을 정렬했습니다. 원래는 그렇게 불렸는데 strings이 스레드의 댓글을 통해 다른 이름으로 변경되었다는 사실을 알게 되었습니다. 그래서 위의 명령에서는 을 bar사용 LC_ALL=C하고 fgrep대신 grep많은 도움이 됩니다. 모든 제안은 답변에 도움이 됩니다.

관련 정보