문자열이 포함된 파일을 찾고 있습니다. 내 명령:
grep -rwl '/path/' -e "string"
다른 문자열을 포함하는 경로로 결과를 제한하고 싶습니다. 나는 이것을 할 수 있다:
grep -rwl '/path/' -e "string" | grep 'path_string'
가능하다면 "path_string"으로 시작하는 경로만 살펴서 실행을 최적화하고 싶습니다. 어떻게 해야 하나요?
답변1
find
예를 들어 다음을 사용할 수 있습니다 .-path
find /path -path '*path_string*' -type f -exec grep -qw 'string' {} \; -print
이는 1 쉘 패턴 과 일치하는 파일 이름을 검색 /path
하고 해당 파일에서만 실행되며 성공하면 해당 이름을 인쇄합니다.*path_string*
grep
1: 다음부터 시작하는 전체 파일 이름에 패턴 일치가 적용됩니다./path/