![파일의 문자열이 파일 계층 구조에 존재하는지 확인](https://linux55.com/image/210828/%ED%8C%8C%EC%9D%BC%EC%9D%98%20%EB%AC%B8%EC%9E%90%EC%97%B4%EC%9D%B4%20%ED%8C%8C%EC%9D%BC%20%EA%B3%84%EC%B8%B5%20%EA%B5%AC%EC%A1%B0%EC%97%90%20%EC%A1%B4%EC%9E%AC%ED%95%98%EB%8A%94%EC%A7%80%20%ED%99%95%EC%9D%B8.png)
500개의 문자열이 포함된 목록이 있습니다. 1770개 폴더에 18566개의 파일이 있는지 알고 싶습니다. 결과 출력을 저장해야 합니다. 어떻게 해야 하나요?
답변1
이 -l
옵션은 일반적으로 검색어와 일치하는 파일 이름을 인쇄합니다. 이 -r
옵션을 사용하면 grep이 발견된 모든 디렉터리에 grep을 수행할 수도 있습니다. 옵션은 -f
grep에게 주어진 패턴이 파일임을 알려주고, 이 -F
옵션은 grep에게 정규 표현식이 아닌 정확한 일치 항목을 검색하도록 지시합니다.
문자열 목록이 라는 파일 안에 있고 list
, 일치할 각 단어가 해당 줄에 있고, 확인할 모든 폴더와 일치하는 일부 패턴이 있다고 가정합니다. 우리는 다음을 수행할 수 있습니다.
grep -Ff 'list' -rl folders*
각 줄 끝의 캐리지 리턴이 grep 일치 줄이나 올바르게 처리하는 데 어떤 영향을 미칠지 모르겠습니다 list
. 여러 파일이 있는 폴더에서 작은 목록을 사용해 보아야 합니다.