백업 프로그램을 작성 중인데 특정 디렉터리에서 가장 오래된 디렉터리를 삭제하려면 bash 명령을 실행해야 합니다.
나는이 명령을 찾았습니다가장 오래된 디렉토리를 인쇄:
find -type f -printf '%T+ %p\n' | sort | head -n 1
디렉터리와 해당 콘텐츠를 모두 삭제하는 명령은 다음과 같습니다.
rm -rf [oldest directory name]
가장 오래된 폴더를 삭제하려면 이 두 폴더를 어떻게 결합해야 합니까?
답변1
이는 모든 경로에서 작동해야 합니다(해 주신 @StéphaneChazelas에게 감사드립니다)head
장난) POSIX와 호환되어야 합니다(가독성을 위해 형식화됨).
printf %q "$(
find . -type d -printf "%T+ %p\0" |
tr '\0\n' '\n\0' |
sort |
head -n 1 |
tr '\0\n' '\n\0' |
sed -e 's/^[^ ]\+ //')"
실제로 디렉토리를 제거하려면 printf %q
다음으로 바꾸십시오.rm -rf --