내가 있는 디렉토리의 파일을 어떻게 삭제할 수 없나요?

내가 있는 디렉토리의 파일을 어떻게 삭제할 수 없나요?

30일이 지난 디렉터리의 파일을 삭제하고 싶지만 내 디렉터리의 파일은 삭제하고 싶지 않습니다.

답변1

파일을 삭제하기 전에 나열하려면:

find . -maxdepth 1 -mtime +30 -type f -ls

파일을 삭제하려면:

find . -maxdepth 1 -mtime +30 -type f -exec rm {} +

그리고

  • .현재 디렉터리 지정
  • -maxdepth 1디렉토리의 1레벨까지 내려갑니다.
  • -mtime +30마지막으로 수정된 날짜가 30일을 초과한 파일만
  • -type f일반 파일만

답변2

zsh 쉘에는특수 와일드카드 확장 기능그게 도움이 될 거예요.

  • 현재 디렉터리에서 30일이 지난 파일을 나열합니다.ls -d -- *(.m+30)

  • 현재 디렉터리에서 30일이 지난 파일을 삭제합니다.rm -- *(.m+30)

zsh 구문은 *(.m+30)와일드카드입니다. 즉, 다음을 의미합니다.

  • *-- 임의의 파일 이름
  • ( ... )-- 예선은...
  • .-- 일반 파일(디렉토리 등이 아님)
  • m+30--수정 시간이 30일 이상 전입니다.

관련 정보