.mp3 확장자를 가진 파일이 최소 1개 이상 있는 디렉터리(현재 디렉터리) 수를 어떻게 알 수 있나요?
재귀가 필요하지 않습니다. 현재 디렉터리의 디렉터리 구조는 예를 들면 다음과 같습니다.
1/blabla.mp3
2
3/something.mp3
4
5
이 명령은 mp3 파일이 포함된 디렉터리 2개를 반환해야 합니다.
답변1
find . -type f -name "*.mp3" -exec dirname {} \; | uniq | wc -l
답변2
find . ! -name . -prune -type d -exec sh -c '
yes | head -1 |
find "$1/." ! -name . -prune -type f \
\( -name '*.[mM][pP]3' -o -name '.*.[mM][pP]3' \) \
-exec sh -c "read foo" \; -print
' {} {} \; | wc -l |
sh -c 'read n;echo "There are $n dirs with mp3 files."'
외부 "찾기"는 현재 디렉터리의 모든 하위 디렉터리를 선택합니다. 그런 다음 각 파일에 최소 1개의 mp3 파일(숨겨진 파일 포함)이 포함된 경우 각 파일에 대해 하강을 수행하고 해당 파일 내에서 대소문자를 구분하지 않고 비재귀 검색을 수행합니다.