windows 특정 디렉토리 백업 후 30일 이상 지나면 삭제처리
압축프로그램 7zip 존재해야 함
원본과 대상의 경로를 확실하게 지정해야 함
잘 못 지정하는 경우 원본의 데이터가 삭제됨
1. 사용자 서버 환경에 맞게 경로 구성
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
set year=%DATE:~10,4% set day=%DATE:~7,2% set mnt=%DATE:~4,2% set hr=%TIME:~0,2% set min=%TIME:~3,2% IF %day% LSS 10 SET day=0%day:~1,1% IF %mnt% LSS 10 SET mnt=0%mnt:~1,1% IF %hr% LSS 10 SET hr=0%hr:~1,1% IF %min% LSS 10 SET min=0%min:~1,1% set backuptime=%year%-%day%-%mnt%-%hr%-%min% echo %backuptime% set errorLogPath="c:\dumperrors.txt" :: BACKUP 경로를 맞춰주라 set backupfldr=D:\2012.xinet.kr\ set backupfldr1=e:\2012.xinet.kr_source_backup\ :: Path to zip executable set zipper="C:\Program Files\7-Zip\7z.exe" :: Number of days to retain .zip backup files set retaindays=5 :: Switch to the data directory to enumerate the folders pushd %datafldr% :: turn on if you are debugging @echo off echo "압축을 시작합니다." :: 압축진행 / 첫번째가 백업받는 디렉토리 / 두번째 부분이 백업할 소스(원본) %zipper% a -tzip "%backupfldr1%FullBackup.%backuptime%.zip" "%backupfldr%" :: 30일 이상 지난 파일 삭제 처리 (잘못 경로를 입력하면 원본의 데이터 자료가 손실될수 있으니 확실하게 진행 echo "Deleting zip files older than 30 days now" Forfiles -p %backupfldr1% -s -m *.* -d -%retaindays% -c "cmd /c del /q @path" |