1. 윈도우 특정 경로를 AWS S3 버킷에 IP 로 폴더를 만들어서 저장 (delete 옵션이 없으므로 올리기만 함)
2. 윈도우 스케줄러에 삭제 스크립트를 등록해서 일정 기간이 지난 파일을 자동 삭제
- 윈도우 파워쉘 에서 수행
- 파일명 : AAAA.ps1
- 내용 (AWS 윈도우 환경에서 특정 경로를 s3와 동기화 하는 구문)
$localIp = Invoke-RestMethod http://169.254.169.254/latest/meta-data/local-ipv4
aws s3 sync D:/temp s3://awss3bucketname/depth1/depth2/$localIp
D:\script\logdelete.bat
- 파일명 : logdelete.bat
- 내용 (1일이 지난 파일 삭제 하는 샘플)
forfiles /p "D:\MyDocument\download\" /s /d -1 /c "cmd /c del /F /Q @path"
forfiles /p "D:\MyDocument\download\" /s /d -1 /c "cmd /c del /F /S /Q @path"
cmd 의 S 옵션이 있으면 실제 삭제되는 파일을 콘솔에 보여줌
- 윈도우 Task Scheduler 에 작업 추가
- 설정된 인자 값 : -ExecutionPolicy Unrestricted -nolog -command "& D:\scripts\logbackup.ps1"
- https://stackoverflow.com/questions/51054/batch-file-to-delete-files-older-than-n-days
- https://ss64.com/nt/forfiles.html