find
디렉토리에 있는 3개의 파일 이름에 대한 결과만 반환 할 수 있습니까 ?
물론 결국 우리는 그것을 wc -l
계산하는 데 사용할 수 있습니다 ...
그러나 일종의 프로젝트 루트로 시작한 다음 이름/정규식 패턴과 일치하는 하위 폴더 내에서 그 안에 포함된 하위 폴더를 나열해 보세요.
file1.ext1
file2.ext2
헤헤*.ext3
그런 다음 wc -l
이러한 파일이 모두 포함되어 있는지 직접 계산하시겠습니까?
답변1
find
-exec
기본 제공되지 않은 테스트를 사용하거나 실행할 수 -execdir
있으며 해당 결과를 find
테스트로 사용할 수 있습니다. 이 경우:
find . -name \*.ext3 -execdir /usr/bin/test -e file1.ext1 -a -e file2.ext2 \; -printf "%p\n" | sort -u | wc -l
일치하는 파일을 찾고 *.ext3
, 찾은 각 파일에 대해 /usr/bin/test
포함 디렉터리에서 실행하여 해당 디렉터리에도 파일이 있는지 file1.ext1
확인 합니다. file2.ext2
이렇게 하면 포함된 디렉터리에 대한 경로가 출력됩니다. 그런 다음 출력을 필터링하여 중복을 제거하고 최종적으로 계산됩니다.