-prune 및 -delete는 find 명령과 호환되지 않습니까?

-prune 및 -delete는 find 명령과 호환되지 않습니까?

매뉴얼 페이지에는 다음과 find같이 나와 있습니다.

   -prune True;  if  the file is a directory, do not descend into it. If -depth is 
          given, false; no effect.  Because -delete implies -depth, you cannot 
          usefully use -prune and -delete together.

마지막 문장은 무슨 뜻인가요? 다음 명령을 효율적으로 실행할 수 없습니다...

find /path/ -prune -type f -ctime +15 -delete

...마지막으로 수정된 지 15일 이상 지난 모든 파일을 찾아 삭제합니다./path/ 하지만 아래 하위 디렉터리에는 없습니다. /path/? 나는 이것이 완벽하게 유효한 사용 사례라고 생각합니다.

답변1

문제는 같이 사용 -prune하면 아무런 효과가 없다는 것입니다.-depth-delete 힌트 -depth.

문의하신 사용 사례에서는 -maxdepth X.

예를 들어

find /path/ -maxdepth 1 -type f -ctime +15 -delete

할 것입니다.

관련 정보