Windows 에서 백업파일을 Rotate 하여 최근 N일 동안의 백업파일을 유지하도록 하였다.
final DAY_LIMIT = 14 // N일 final TARGET_DIR = "M:/" def today = new Date() def command = "cmd /c m: & cd \\ & mkdir ${today.format('YYYYMMdd')} & move backup\\*.tib ${today.format('YYYYMMdd')}" command.execute().waitFor() new File(TARGET_DIR).eachFile { path -> if (path.directory && path.name =~ /201[2-9]\d{4}/) { def lastModified = new Date(path.lastModified()) def diffDay = new Date() - lastModified if(diffDay > DAY_LIMIT) { // println(lastModified.format("YYYY-mm-dd") + " : ${path}") println("cmd /c rd /q /s ${path}") "cmd /c rd /q /s ${path}".execute().waitFor() } } }
'Language > Groovy' 카테고리의 다른 글
Groovy : 여러 디렉토리의 사이즈를 구하고 크기 순으로 정렬하기 (0) | 2012.06.15 |
---|---|
Grails : ROOT Context 로 Grails App 실행하기 (0) | 2012.05.23 |
Groovy : 버전 정보 가져오기 (0) | 2012.05.23 |
Groovy : 수정된지 N일이 넘는 파일들 삭제하기 (0) | 2012.03.09 |
Groovy : 클로져(반복자)에서 빠져나오기 (0) | 2012.03.07 |