이름이 일치하는 모든 파일 또는 디렉터리 찾기(콘텐츠 제외)

이름이 일치하는 모든 파일 또는 디렉터리 찾기(콘텐츠 제외)

해당 이름이 포함된 모든 파일이나 디렉터리를 find검색하는 명령을 작성하려고 합니다 (명확성을 위해 슬래시가 추가됨).andreas

~$ find . -iname '*andreas*'
./Documents/Resume - Andreas/
./Documents/Resume - Andreas/Resume-Andreas-Renberg.odf
./Documents/Resume - Andreas/Resume-Andreas-Renberg.pdf
./Documents/Resume - Andreas/Resume-Andreas-Renberg-v2.pdf
./Documents/Resume - Andreas/Resume-Andreas-Renberg-v3.pdf
./Documents/Resume - Andreas/Resume-Andreas-Renberg-final.pdf
./Pictures/Trip with Andreas to Isengard/
./Pictures/Profiles/andreas-renberg.jpg
./.cache/junk/nothing here/hide-from-andreas.tar.gz

거의정확히 내가 필요했던 것이지만, 그 목록에는 다른 스크립트에 문제를 일으키는 엄청난 중복이 있었습니다.

Find는 이미 디렉토리에 대해 알려주므로 해당 디렉토리에서 일치하는 모든 항목을 나열 ./Documents/Resume - Andreas/하고 싶지는 않습니다 . find출력이 다음과 같기를 원합니다.

~$ find . -iname '*andreas*' [command]
./Documents/Resume - Andreas/
./Pictures/Trip with Andreas to Isengard/
./Pictures/Profiles/andreas-renberg.jpg
./.cache/junk/nothing here/hide-from-andreas.tar.gz

답변1

당신은 할 수치다유형 일치목차:

find . -iname '*andreas*' -print -type d -prune

에서 man find:

-prune True; if the file is a directory, do not descend into it.

관련 정보