SharedIT | 묻고 답하기(AMP)

CMD 고수분들 답변 부탁 드립니다. (XCOPY 관련 질문)

XCOPY를 사용하여 백업 후 복사한 내용을 LOG처럼 TEXT로 남기는 중입니다.

하지만 지속적으로 일정한 간격 마다 백업을 진행하면 TEXT FILE에는 최근 복사 된 내용만 남아 이전에 있던 내용은 사라져서 덮어 쓰지 않고 추가하는 방법을 모르겠네요..


  • 8/8일 백업하여 LOG A 가 저장이 되었다면, 8/9일 백업한 내용은 LOG B로 저장하는 방법


  • 8/8일 백업하여 LOG A가 저장이 된 상태에서, 8/9일 백업한 내용을 LOG A에 추가로 저장하는 방법

위의 두 가지 방법 중 가능한 것 또는 알고 계신 더 좋은 방법이 있으시다면 답변 부탁 드립니다.

현재는 아래와 같은 형식으로 사용중에 있습니다.

@ECHO OFF

XCOPY C: D: /D /E /H /K /Y /C /S /F >D:LOG.txt 2<&1

5개의 답변이 있습니다.

아이언맨
  0 추천 | 4년 이상 전

xcopy보다 robocopy를 이용하세요.

xcopy 확장버전이라고 생각하시면 됩니다.

윈도우7부터 기본 프로그램으로 제공됩니다.

AprilFirst | 4년 이상 전

아하 그렇군요! robocopy도 공부 해봐야겠네요... 좋은 정보 감사합니다~.
danis78
  0 추천 | 4년 이상 전 | 제이컴즈 | 010-2871-8756

저도 다른 분들 말씀대로 날짜별 (%date%) 로그를 남기는 게 낫지 않을까 싶네요

저희 회사에서도 로그 파일명을 날짜별로 하고 있어요

AprilFirst | 4년 이상 전

네! 감사합니다. 적용 해볼게요.
wansoo
  0 추천 | 4년 이상 전

리다이렉션(redirection)이라고 부르죠.

표준 입출력(Standard input/output)을 사용자 지정 경로로 변경 시키는 방법이 되겠는데...

기원이 UNIX에서 부터되어, DOS (Window CMD) 및 LINUX, MacOS X 등에서 모두 지원되는 기능이고요.

출력을 변경할 때는  > 와 >>, 2> 을 사용할 수 있고, 입력은 < 을 사용할 수 있고요.

> 한개만 사용할 경우에는 output 형태로 열어 출력 시키기 때문에 기존 파일을 지워 버리고 새로 생성하게 되죠.

>> 두개일 경우에는 append 형태로 열어 출력 하기 때문에 기존 파일이 있다면 뒤에다 추가하여 덧붙이게 되고...

2> 와 같이 사용할 경우에 표준 오류에 대한 출력을 변경할때 사용할 수 있고요.

표준 출력과 표준 오류 모두 변경 시킬 경우라면 >와 2>  모두 한꺼번에 사용하면 되겠고...


질문하신 내용의 간단한 해결 방법은 > 대신에 >>를 사용하면 되겠네요.


출력 로그명에 %DATE% 와 같은 환경 변수를 사용한다면 일자별로 로그를 생성해서 일자별 로그를 관리할 수 있다는 장점이 있고요.


이 질문은 xcopy 질문이라기 보다는 OS에 관련된 질문이라 할 수 있겠네요.

AprilFirst | 4년 이상 전

감사합니다. 제가 아직은 이쪽을 잘 몰라서 인터넷 보고 조금씩 적용해보는 중이라서요..ㅎㅎ 좋은 정보 장문의 답변에 정말로 감사 드립니다.
Rutiz
  0 추천 | 4년 이상 전

CMD 라면 %date% 변수를 활용할 수도 있을 것 같아요

XCOPY C: D: /D /E /H /K /Y /C /S /F >> D:LOG_%date%.txt 2<&1

%date%는 오늘 날짜를 보여주는 환경변수입니다.

AprilFirst | 4년 이상 전

좋은 정보 감사합니다. 이것도 적용 해볼게요
dwmin
  0 추천 | 4년 이상 전 | 제니스앤컴퍼니 | 01072574343

안녕하세요 :) 말씀하신 내용 두번째의 추가로 저장하는 방법이 좋을것 같습니다.

XCOPY C: D: /D /E /H /K /Y /C /S /F >D:LOG.txt 2<&1

> 부등호가 한개면 파일 교체

>> 부등호가 두개면 내용 추가 입니다.


AprilFirst | 4년 이상 전

좋은 정보 감사 드립니다. 좋은 하루 되시길 바랍니다.