2014-01-10 2 views
1

나는 robocopy 디렉토리에 있고 하위 디렉토리는 다른 디렉토리에 있습니다. 원본에있는 파일이 새로운 경우 대상의 파일 이름 끝에 날짜/시간 스탬프를 추가하고 복사본을 대상으로 복사하여이 파일의 복사본을 만들고 싶습니다.robocopy 파일 구조 - 목적지가 더 최신 인 경우 파일의 이름을 변경하십시오.

이렇게하려면 robocopy에서 어떤 스위치도 보이지 않습니다. 누군가가 나를 어떻게 인도 할 수 있습니까?

답변

1

Robocopy 이름 바꾸기 스위치가 없지만 결과 파일에 rename 명령을 사용하여 타임 스탬프를 추가 할 수 있습니다. 다음은 배치 파일의 예입니다.

@echo off 
for /f "tokens=1-3 delims=. " %%a in ('date /t') do (set mydate=%%c-%%a-%%b) 
for /f "tokens=1-2 delims=/:" %%a in ("%TIME%") do (set mytime=%%a%%b) 

dir Directory1\ /b > list 
robocopy Directory1\ Backup\ 
for /f %%f in (list) do rename Backup\%%f %%~nf%mydate%_%mytime%%%~xf 

따라야 할 국가 표준에 따라 구분자를 변경해야합니다. 당신은 이것을 실행함으로써 이것을 얻을 수 있습니다. date /t

+0

이 파일을 좀 더 확장 할 수 있습니까? 예를 들어, 기존의 f'ilename + yyyymmddhhmmss.txt'로 모든 기존 파일의 이름을 바꿀 수 있습니까? 예를 들어 RoboCopy에는 옵션이 없습니다. 이름 바꾸기 – MethodMan