을 사용할 때 find
문자열을 검색 할 때 파일 이름과 줄 번호를 어떻게 반환합니까? 하나의 명령으로 파일 이름을 반환하고 다른 명령과 줄 번호를 반환 할 수는 있지만 조합 할 수는 없습니다.
파일 이름 : find . -type f -exec grep -l 'string to search' {} \;
줄 번호 : find . -type f -exec grep -n 'string to search' {} \;
답변
명령 행 스위치 는 파일이 하나만 있어도 파일 이름을 -H
강제 grep
로 인쇄합니다.
% grep -n 7 test.in
7:7
% grep -Hn 7 test.in
test.in:7:7
-H, --with-filename
Print the filename for each match.
같은 것을 참고 코지로는 말한다 주석 , 이것은 POSIX 표준의 일부가 아닙니다; GNU와 BSD grep에 있지만 일부 시스템에는 없을 수도 있습니다 (예 : Solaris).
답변
find . -type f -exec grep -n 'string to search' /dev/null {} +
(또는 GNU grep의 경우 -H
옵션을 참조하십시오 )
답변
grep이 재귀 -r
플래그를 지원하면 요청이 해결됩니다.
grep -rn "String to search " *