파일이 포함된 폴더 찾기

파일이 포함된 폴더 찾기

특정 파일이 포함된 모든 하위 폴더를 찾는 방법은 무엇입니까?

예를 들어 Minecraft 서버 설치에서는 다양한 세계가 임의의 이름을 가진 하위 폴더에 저장됩니다. 특정 폴더가 세계를 나타내는지 확인하려면 level.dat폴더 내부를 살펴봐야 합니다. 모든 level.dat파일을 찾아 해당 파일이 포함된 폴더를 반환하는 명령이 있습니까 ?

답변1

파일을 찾고 디렉터리 이름을 반환하면 됩니다.

find -name 'level.dat' -exec dirname {} \;

답변2

또는 파일을 찾아 디렉터리 이름을 대량으로 추출합니다.

find 시작 디렉토리 –name level.dat –print | sed 's@/level.dat$@@'

답변3

    find ~ -type f -name "level.dat" -printf '%h\n'

해당 이름을 가진 파일이 여러 개 있을 수 있는 경우 다음으로 파이프하세요.uniq

답변4

이를 사용하여 find특정 테스트를 통과한 파일만 인쇄할 수 있습니다. 나는 이 접근 방식을 좋아합니다.

find . -type d -execdir test -f {}/level.dat \; -print

그러면 이라는 파일이 포함된 모든 파일이 검색됩니다 level.dat.

관련 정보