아래와 같은 커맨드(.cmd) 또는 배치(.bat)파일을 만들어두고 소스 수정때 마다 클릭 한번씩만 해주면 자동으로 수정된 파일이 복사된다.


<Copy2SSO.cmd>


:먼저 해당 서버를 사용할 수 있도록 설정한다.

net use \\{서버이름1}\c$ /user:{admin ID} {admin 비밀번호}

net use \\{서버이름2}\c$ /user:{admin ID} {admin 비밀번호}

net use \\{서버이름3}\c$ /user:{admin ID} {admin 비밀번호}


:작업한 디렉토리의 내용을 서버의 특정 디렉토리로 모조리 복사한다.

: 대상 파일보다 새로운 원본 파일만 복사하고(/D),

: 비어있지 않은 하위 디렉토리까지 복사하고(/S),

: 숨겨지 파일과 시스템 파일도 복사하고(/H),

: 읽기 전용 파일도 겹쳐 쓰고(/R),

: 묻지말고 무조건 덮어쓰고(/Y),

: 복사하다 오류가 발생해도 계속 복사(/C)한다.

xcopy D:\Projects\SiteDev\SSO \\{서버이름1}\c$\Inetpub\wwwroot /D /S /H /R /Y /C

xcopy D:\Projects\SiteDev\SSO \\{서버이름2}\c$\Inetpub\wwwroot /D /S /H /R /Y /C

xcopy D:\Projects\SiteDev\SSO \\{서버이름3}\c$\Inetpub\wwwroot /D /S /H /R /Y /C

xcopy D:\Projects\SiteDev\SSO \\{서버이름3}\c$\Inetpub\wwwroot /D:23-12-2002 /S /H /R /Y /C



+Updated on 2014-03-21


추가로, /EXCLUDE 옵션과 현재 날짜를 일-월-년 순서로 얻는 방법을 적어본다.


XCOPY {소스} {타겟} /EXCLUDE:excludes.txt


이렇게 옵션을 주면, excludes.txt 파일 안에 있는 파일 또는 확장자 목록은 제외하고 복사하게 된다.

즉,


<excludes.txt>

.svn

Thumbs.db

obj

.sdf

.ipch

.pch

.cs

.csproj

.user

.sln

.suo

update.cmd


이렇게 목록을 만들어 두고 쓰면 아주 유용하다.



@For /f "tokens=1-3 delims=- " %%a in ('date /t') do (set TARGETDATE=%%b-%%c-%%a)

:@set TARGETDATE=03-21-2014


한국에서는 date /t 명령어를 명령 프롬프트에 쳐 보면 날짜만 "2014-03-21"과 같이 표시하는데

XCOPY의 /D 옵션에 넣고 싶은 경우 그런 형태로 날짜 값을 넣을 수는 없고 "일-월-년" 순서로 넣어야 한다.

그럴 때 위 스크립트 명령을 실행하면 정확히 원하는 값을 얻을 수 있다.

(이건 기본 날짜 연월일 출력하는 순서가 나라마다 다르므로 외국에서 똑같이 쓰면 안 된다.)




Posted by 떼르미
,


자바스크립트를 허용해주세요!
Please Enable JavaScript![ Enable JavaScript ]