리눅스

[리눅스] 오래된 파일 찾기/이동

세브웁스 2023. 10. 19. 13:30
반응형

백업 스토리지를 관리하기에 앞서 오래된 파일은 자동으로 옮기는 명령어가 있으면 편하다는 생각을 했다.

해당 명령어에 대한 테스트 과정을 기록에 남긴다.

 

테스트 과정
1. 오래된 파일 생성

2. 오래된 파일 삭제하는 명령어 테스트

3. 오래된 파일 이동시키는 명령어 테스트

4. 자동으로 분류하여 이동/삭제하는 스크립트 작성

 

오래된 파일을 생성하는 명령어
touch -t YYYYMMDDHHMM.SS 파일이름

 

각 변수가 뜻하는 정보

  • YYYY: 연도 (4자리)
  • MM: 월 (01-12)
  • DD: 일 (01-31)
  • HH: 시간 (00-23)
  • MM: 분 (00-59)
  • SS: 초 (00-59)
# 예시
touch -t 202210170000.00 test

 

해당 예시 과정을 통해 생성된 파일을 보면 다음과 같이 2022년 10월 17일에 생성된 파일로 표시된다.

[root@saevops imsi]# ls -alrt
합계 0
-rw-r--r--.  1 root root   0 10월 17  2022 test

 

1년 이상 된 파일을 찾아 나타내는 명령어
find /usr/local/imsi -type f -mtime +365

 

1년 이상 된 파일을 찾아 제거하는 명령어
find /usr/local/imsi -type f -mtime +365 -exec rm {} \;

 

 

1년 이상 된 파일을 찾아 특정 경로로 옮기는 명령어
find /원본_디렉토리 -type f -mtime +365 -exec mv {} /대상_디렉토리 \;

 

 

자동으로 분류하여 이동/삭제하는 스크립트

1. 스크립트 저장하는 폴더 생성

mkdir /usr/local/imsi

 

2. 스크립트 내용 작성 (필요한내용만 꺼내 작성)

vi /usr/local/imsi/oldfilemanage.sh

# 내용출력
find /원본_디렉토리 -type f -mtime +365 -exec mv {} /대상_디렉토리 \;

# 해당파일삭제
find /usr/local/imsi -type f -mtime +365 -exec rm {} \;

# 해당파일옮기기
find /원본_디렉토리 -type f -mtime +365 -exec mv {} /대상_디렉토리 \;

 

3. 스케줄러 등록

crontab -e

# 매일 23시 59분에 해당 스크립트 실행
23 59 0 0 0 /usr/local/imsi/oldfilemanage.sh

 

반응형