find와 xarg 또는 exec의 조합을 사용하여 결과에서 특정 패턴을 검색하는 예를 찾았습니다. 링크 참조여기.
그러나 find 명령의 결과를 grep의 검색 패턴으로 사용하고 싶습니다. 아래 명령과 비슷하지만 구성 방법을 잘 모르겠습니다.
find . -name "*.cgi" -printf '%f\n' | cut -d. -f1 | xarg grep 'find_result' *.html
답변1
GNU 를 가정 grep
하고 파일 이름에 개행 문자가 포함되어 있지 않다고 가정합니다.
find . -name '*.cgi' -printf '%f\n' | cut -d. -f1 | sort -u | fgrep -f - *.html
답변2
여기서는 필요하지 않습니다 . stdin에서 패턴 목록을 읽으면 xargs
됩니다 .grep
GNU 찾기:
find . -name '*cgi' -printf '%f\n' | grep -f - *html
그렇지 않으면:
find . -name '*cgi' | cut -f2- -d/ | grep -f - *html