내 설정은 다음과 같습니다.
폴더 구조
dir
|--correctfile1
|--correctfile2
|--correctfile3
|--subdir1
|--wrongfile1
|--wrongfile2
|--wrongfile3
|--subdir2
|--subdir3
dir
그 안에 3분보다 오래된 파일이 있는지 알아내야 합니다 . 즉, 폴더를 무시 subdir1, subdir2 and subdir3
하고 홈 디렉터리에서만 검색 해야 합니다.dir
나는 다음 줄을 가지고 있습니다
find $dir -mmin +3 -type f
하지만 이것은 subdir1의 파일도 인쇄합니다.
추가 정보:
운영 체제 5.3
-maxdepth
find 명령에는 , -mindepth
, -or
또는 옵션이 없습니다 -not
.-path
답변1
재귀를 방지하는 이식 가능한 방법은 find
최상위 디렉터리가 아닌 다른 디렉터리에서 작업을 수행하는 것입니다.-prune
find "$dir" \! -name "$(basename -- "$dir")" -type d -prune -o -mmin +3 -type f -print