[배치파일]주기적인 파일 copy 하는 방법??
[배치파일]주기적인 파일 copy 하는 방법??
- huhihi00
- 2008.05.23 14:09
- 답변
- 1
- 조회
- 1,014
echo off
xcopy d:\aaa\*.xls d:\ /D:05-23-2008
위 배치는 aaa폴더에서 5월23일 이후에 생긴파일들을 몽땅 복사하는 것이죠...
하지만.. 주기적(일주일단위)으로 카피를 한다면??
--즉 하루에 한번씩 백업 받은 것들 중 일주일에 한번씩 맨 마지막 것을 카피해서 다른 폴더에 넣고 싶다는..
그래서
echo off
xcopy d:\aaa\*.xls d:\ /D:%date%
이렇게 바꾸어 봤죠.. 하지만 /D 옵션과 date 의 날짜 타입이 달라서 먹질 않네요..
/d ------ m-d-y
date ----- y-m-d
어떻게 바꾸면 될런지... 아시는 분 손~~
질문자 채택된 경우, 추가 답변 등록이 불가합니다.
re: [배치파일]주기적인 파일 copy 하는 방법??
- yonghan_shin
- 답변채택률 53.3%
- 2008.05.23 14:52
마이지식 > 내 추천지식에
마이지식 확인하기
7일간 보관됩니다.질문자 인사
좋은 답변 감사합니다. 많은 도움이 되었습니다.
토큰으로 나누어 분리 하면 되는데요
@echo off
for /f "tokens=1-3 delims=- " %%A in ('echo %DATE%') do (set YY=%%A&SET MM=%%B&SET DD=%%C)
이렇게 하면 %YY% 에는 연도가 %DD% 에는 날짜가 %MM% 달이 들어 갑니다 .
적절하게 조합해서
set /a D1=%DD%-2
이렇게 하면 연산도 가능 합니다.
%D2% 에는 2일전의 날짜가 들어 갑니다 .
날자의 부분도 취할수 있는데
set DD=%DD:~1,2%
이렇게 하면 %DD% 가 23 일이라면 두번째 글자 3 이 들어 갑니다.
xcopy d:\aaa\*.xls d:\ /D:%YY%-%MM%-%DD%하루전이라면
xcopy d:\aaa\*.xls d:\ /D:%YY%-%MM%-%D2%
이렇게 하시면 되겠죠