![find 명령은 잘리지 않은 항목을 인쇄하지 않습니다.](https://linux55.com/image/159843/find%20%EB%AA%85%EB%A0%B9%EC%9D%80%20%EC%9E%98%EB%A6%AC%EC%A7%80%20%EC%95%8A%EC%9D%80%20%ED%95%AD%EB%AA%A9%EC%9D%84%20%EC%9D%B8%EC%87%84%ED%95%98%EC%A7%80%20%EC%95%8A%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
이 명령은 작업 디렉터리에서 마침표로 시작하는 기본 이름(숨겨진 항목이라고도 함)이 있는 파일/디렉터리를 비재귀적으로 인쇄합니다.
find . -maxdepth 1 -name '.*'
숨겨진 항목을 제외한 모든 항목을 인쇄하려면 다음 명령이 작동할 것으로 예상하지만 아무 것도 인쇄되지 않습니다.
find . -maxdepth 1 -name '.*' -prune -o -print
다음과 같은 숨겨진 항목이 없는 홈 디렉터리에서 이 명령을 실행했습니다.문서,다운로드인쇄하고 싶은 디렉토리, 기타 파일 등입니다.
누군가 이유를 설명할 수 있나요?
답변1
술어 -prune
가지치기목차- 이 경우 -name
시작 디렉터리가 일치하므로 .
전체 트리가 제거됩니다.
당신이 원하는 것은 일치를 무효화하는 것뿐입니다 -name
.
find . -maxdepth 1 ! -name '.*'
또는
find . -maxdepth 1 -not -name '.*'