2011. 9. 8. 18:22

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

2011. 7. 28. 13:30

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

Utility2010. 8. 29. 20:00



REM 만든이 : iuchoe form 부들 <.)++++<
REM 만든때 : 2010 3 10
REM 메일: ikw3179@naver.com
REM 저작권 : GPL


REM S_SRC(Source from folder), S_TAR(Source to folder)
REM B_SRC(Binary from folder), B_TAR(Binary to folder)
REM '1' for copy Source [%S_SRC%] TO [%S_TAR%], 
REM 'Enter Key' for copy Binary [%B_SRC%] TO [%B_TAR%].
@cls

@SET S_SRC="D:\src-CAPSERP_CAPS"
@SET S_TAR="D:\src-tmp-prj\_src-tmp-CAPSERP_Finance"
@SET B_SRC="C:\capserp"
@SET B_TAR="D:\Users\exp_iwchoi\Desktop\tmp"
@SET LOG=D:\Users\exp_iwchoi\Desktop\tmp
@SET METHOD=

@set L=############################################################

@SET B_SRC1=%B_SRC%\%"FIN"
@SET B_SRC2=%B_SRC%\%"SYS"

@echo %L:#=-%

@if not EXIST %S_TAR% MD %S_TAR%
@if not EXIST %B_TAR% MD %B_TAR%

@echo off
REM 날짜를 가져온다.
for /f "tokens=1-3 delims=- " %%A in ('echo %DATE%') do (set YY=%%A&SET MM=%%B&SET DD=%%C)
@echo on

@echo 'Enter Key' for copy Source to tmp Source, '1' for copy Binary to Source,  '2' for copy Compiled PBD to Desktop\tmp.
@echo %L:#=-%

@set /P METHOD=입력/METHOD:

@if "%METHOD%"=="2" (
    set METHOD=PBD2DSK_tmp
)

@if "%METHOD%"=="" (
    set METHOD=SRC2tmpSRC
)

@if "%METHOD%"=="1" (
    set METHOD=PBD2src
)

@if "%METHOD%"=="SRC2tmpSRC" (
REM @ECHO ●[%DATE:~0,10% %TIME:~0,8%]>>%LOG%
@ECHO  [%S_SRC%]2[%S_TAR%] ●*.PBL
PAUSE
XCOPY %S_SRC%\*.PBL %S_TAR% /e /s /d /c /y /i
XCOPY %S_SRC%\*.PBR %S_TAR% /e /s /d /c /y /i
XCOPY %S_SRC%\*.OPT %S_TAR% /e /s /d /c /y /i
XCOPY %S_SRC%\*.PBT %S_TAR% /e /s /d /c /y /i
XCOPY %S_SRC%\*.PBD %S_TAR% /e /s /d /c /y /i
XCOPY %S_SRC%\*.DLL %S_TAR% /e /s /d /c /y /i
REM XCOPY %S_SRC%\*.PBW %S_TAR% /e /s /d /c /y /i
REM @ECHO [%S_TAR%]●*.DLL, *.EXE, *.JPG, *.BMP, *.GIF, *.PNG, *.ICO, *.INI
REM XCOPY %S_SRC%\*.EXE %S_TAR% /e /s /d /c /y /i
REM XCOPY %S_SRC%\*.JPG %S_TAR% /e /s /d /c /y /i
REM XCOPY %S_SRC%\*.BMP %S_TAR% /e /s /d /c /y /i
REM XCOPY %S_SRC%\*.GIF %S_TAR% /e /s /d /c /y /i
REM XCOPY %S_SRC%\*.PNG %S_TAR% /e /s /d /c /y /i
REM XCOPY %S_SRC%\*.ICO %S_TAR% /e /s /d /c /y /i
REM XCOPY %S_SRC%\*.INI %S_TAR% /e /s /d /c /y /i

PAUSE
EXPLORER %S_TAR%
)

@if "%METHOD%"=="PBD2src" (
@ECHO  [%B_SRC%] 2 [%S_SRC%] ●*.PBD
PAUSE
xcopy %B_SRC%\CAP*.PBD %S_SRC%\ /d /c /y /i
xcopy %B_SRC%\PAN*.PBD %S_SRC%\ /d /c /y /i
xcopy %B_SRC%\EAI*.PBD %S_SRC%\EAI\ /d /c /y /i
xcopy %B_SRC%\FIN*.PBD %S_SRC%\FIN\ /d /c /y /i
xcopy %B_SRC%\HIR*.PBD %S_SRC%\HIR\ /d /c /y /i
xcopy %B_SRC%\PAY*.PBD %S_SRC%\PAY\ /d /c /y /i
xcopy %B_SRC%\SAL*.PBD %S_SRC%\SAL\ /d /c /y /i
xcopy %B_SRC%\SCM*.PBD %S_SRC%\SCM\ /d /c /y /i
xcopy %B_SRC%\SVC*.PBD %S_SRC%\SVC\ /d /c /y /i
xcopy %B_SRC%\SYS*.PBD %S_SRC%\SYS\ /d /c /y /i

PAUSE
)

@if "%METHOD%"=="PBD2DSK_tmp" (
@ECHO [%S_TAR%]2[%B_TAR%] ●*.PBD
PAUSE
XCOPY %S_TAR%\FIN\*.PBD %B_TAR% /d:%MM%-%DD%-%YY% /c /y /i
XCOPY %S_TAR%\SVC\*.PBD %B_TAR% /d:%MM%-%DD%-%YY% /c /y /i
XCOPY %S_TAR%\SYS\*.PBD %B_TAR% /d:%MM%-%DD%-%YY% /c /y /i

PAUSE
EXPLORER %B_TAR%
)

Posted by Julyus
Utility2010. 3. 10. 22:02
REM 만든이 : iuchoe form 부들 <.)++++<
REM 만든때 : 2010 3 10
REM 메일: ikw3179@naver.com
REM 저작권 : GPL


REM S_SRC(Source from folder), S_TAR(Source to folder)
REM B_SRC(Binary from folder), B_TAR(Binary to folder)
@cls

@SET S_SRC=D:\Prj\QPS_Iraq\src\BillPro_QPS
@SET S_TAR=D:\Dev_QPS\src_pb
@SET B_SRC=%S_TAR%
@SET B_TAR=D:\Prj\Binary_Release\QPS_BillPro
@SET LOG=D:\Users\Julyus25\Desktop\copy_result.txt
@SET METHOD=

@set L=############################################################

@SET B_SRC1=%B_SRC%\%"Source(pbl)"
@SET B_SRC2=%B_SRC%\%"Template2.0"

@echo %L:#=-%

@if not EXIST %S_TAR% MD %S_TAR%
@if not EXIST %B_TAR% MD %B_TAR%

@echo '1' for copy Source, 'Enter Key' for copy Binary.

@set /P METHOD=입력/METHOD:

@if "%METHOD%"=="" (
    set METHOD=Binary
)

@if "%METHOD%"=="1" (
    set METHOD=Source
)

@if "%METHOD%"=="Source" (
REM @ECHO ●[%DATE:~0,10% %TIME:~0,8%]>>%LOG%
@ECHO  [%S_TAR%] ●*.PBL
XCOPY %S_SRC%\*.PBL %S_TAR% /e /s /d /c /y /i
XCOPY %S_SRC%\*.OPT %S_TAR% /e /s /d /c /y /i
XCOPY %S_SRC%\*.PBW %S_TAR% /e /s /d /c /y /i
XCOPY %S_SRC%\*.PBT %S_TAR% /e /s /d /c /y /i
REM @ECHO [%S_TAR%]●*.DLL, *.EXE, *.JPG, *.BMP, *.GIF, *.PNG, *.ICO, *.INI
XCOPY %S_SRC%\*.DLL %S_TAR% /e /s /d /c /y /i
XCOPY %S_SRC%\*.EXE %S_TAR% /e /s /d /c /y /i
XCOPY %S_SRC%\*.JPG %S_TAR% /e /s /d /c /y /i
XCOPY %S_SRC%\*.BMP %S_TAR% /e /s /d /c /y /i
XCOPY %S_SRC%\*.GIF %S_TAR% /e /s /d /c /y /i
XCOPY %S_SRC%\*.PNG %S_TAR% /e /s /d /c /y /i
XCOPY %S_SRC%\*.ICO %S_TAR% /e /s /d /c /y /i
XCOPY %S_SRC%\*.INI %S_TAR% /e /s /d /c /y /i

PAUSE
EXPLORER %S_TAR%
)

@if "%METHOD%"=="Binary" (
@ECHO [%B_TAR%] ●*.PBD
XCOPY %B_SRC1%\*.PBD %B_TAR% /d /c /y /i
XCOPY %B_SRC2%\*.PBD %B_TAR% /d /c /y /i
@ECHO [%B_TAR%] ●*.DLL, *.EXE, *.JPG, *.BMP, *.GIF, *.PNG, *.ICO, *.INI
XCOPY %B_SRC2%\*.DLL %B_TAR% /e /s /d /c /y /i
XCOPY %B_SRC2%\*.EXE %B_TAR% /e /s /d /c /y /i
XCOPY %B_SRC2%\*.JPG %B_TAR% /e /s /d /c /y /i
XCOPY %B_SRC2%\*.BMP %B_TAR% /e /s /d /c /y /i
XCOPY %B_SRC2%\*.GIF %B_TAR% /e /s /d /c /y /i
XCOPY %B_SRC2%\*.PNG %B_TAR% /e /s /d /c /y /i
XCOPY %B_SRC2%\*.ICO %B_TAR% /e /s /d /c /y /i
REM XCOPY %B_SRC2%\*.INI %B_TAR% /e /s /d /c /y /i

PAUSE
EXPLORER %B_TAR%
)








Posted by Julyus
Utility2010. 2. 18. 14:17


xcopy 백업시 에러여부를 기록하는 batch파일 만들기


  앙 백신서버의  Deploy폴더의 백신 배포패키지를   각 지점의 보조백신서버의 deploy라는 폴더로  자동으로 배포하고 싶었습니다.  30여개가 넘는 보조 백신서버의 배포 폴더내에도  중앙서버의  최신 배포파일을 똑 같이 유지하게 하려고 하니 고민이 되더군요..   전문 복제툴은 비쌀뿐 아니라 번거롭기도 하거든요..    변경된 것을  매번 복사해주기도 힘들고   매번 지점의 관리자들에게 새로운 파일을 받아가라고 하기도 힘들구요..   한번 이것을 자동화(?)하면 앞으로도 쓰임새가 매우 클 것 같은 예감이 들더군요..

  일복제는  아래의 조건을 만족해야 했습니다.
1. 트래픽을 절약하기 위해  변경된 파일만 복제되어야 한다.
2. 다수의 대상에게  복제가능해야 한다.
3. 복제 결과를 report받고 싶다. 
   (이때 복제 시작 시간과 마친 시간, 에러여부를 확인할수있어야한다.)
4. 무료툴을 써야 한다.

   본적으로  xcopy 명령을 사용했구요..  date, time, echo 등의 dos기본 명령을 사용하여  초간단 복제 배치파일을 만들었습니다.    복제작업이  진행되는 동안  오류가 생겨도 계속 진행이 가능하고   오류 여부를  copy_result.txt라는 파일로 출력할 수 있도록 했습니다.   제가 썼던 파일을 좀 편집해서  첨부했습니다.  잘 실행이 되더군요..  이 배치파일을 중앙서버에서  야간에 자동으로 실행되도록 스케쥴을 걸면  모든 작업이 끝이 나게 되죠..   물론 미리  각 지점의 보조 (백신)서버의 공유폴더에   write할 수있도록 공유권한 설정을 해두어야 합니다.   복제할 때 뿐 아니라  rename , 혹은 삭제등도  마찬가지 요령으로  적용이 가능하니   매우 유용하지 않을까 생각합니다.   ^^


echo ======= Copy Start =============== >> copy_result.txt   (copy_result.txt란 파일에 기록합니다)

date/t   >> copy_result.txt     (복제 시작 날짜를 기록합니다.)

time/t   >> copy_result.txt     (복제 시작 시간을 기록합니다.)

echo ======= Copy Start =============== >> copy_result.txt

 

echo "N--192.168.1.1" >> copy_result.txt     (서버 이름과 아이피를 먼저 출력합니다.)

xcopy d:\deploy\*.*  \\192.168.1.1\deploy\ /d /s /c /y /i 2>> copy_result.txt
 (  >> 는 xcopy명령의 성공,실패 모두  기록하고  2>> 는 실패시에만  기록합니다. )
 ( 추천사항: 2>>  많은 작업 내역이 있을 때 쉽게 구분가능하고  실패원인을 출력해줍니다.)

echo "I--192.168.2.1" >> copy_result.txt

xcopy d:\deploy\*.*  \\192.168.2.1\deploy\ /d /s /c /y /i 2>> copy_result.txt

echo "B--192.168.3.1" >> copy_result.txt

xcopy d:\deploy\*.*  \\192.168.3.1\deploy\ /d /s /c /y /i 2>> copy_result.txt

echo "B--192.168.4.1" >> copy_result.txt

xcopy d:\deploy\*.*  \\192.168.4.1\deploy\ /d /s /c /y /i 2>> copy_result.txt

echo "C--192.168.5.1" >> copy_result.txt

xcopy d:\deploy\*.*  \\192.168.5.1\deploy\ /d /s /c /y /i 2>> copy_result.txt

echo "A--192.168.6.1" >> copy_result.txt

xcopy d:\deploy\*.*  \\192.168.6.1\deploy\ /d /s /c /y /i 2>> copy_result.txt

echo "L--192.168.7.1" >> copy_result.txt

xcopy d:\deploy\*.*  \\192.168.7.1\deploy\ /d /s /c /y /i 2>> copy_result.txt

 

echo ======= Copy End =============== >> copy_result.txt

date/t   >> copy_result.txt      (복제 끝 날짜를 기록합니다.)

time/t   >> copy_result.txt       (복제 끝 시간을 기록합니다.)

echo ======= Copy End =============== >> copy_result.txt

 

 
vaccine_folder_update.bat 라는 배치파일을 실행하고 있는 모습니다.

사용자 삽입 이미지

결과파일인 copy_result.txt를 열어본 모습니다.
대상서버중에 한 서버인 A**********에 접속이 안되어 access denied란 로그가 떠 있습니다.
사용자 삽입 이미지
Posted by Julyus
Utility2009. 12. 30. 11:53
[Sample#1]
ECHO OFF
D:
CD\
IF NOT EXIST "D:\Project\QPS_Iraq\src\Bill_pro\Binary_Release" MD "Project\QPS_Iraq\src\Bill_pro\Binary_Release"
cd D:\Project\QPS_Iraq\src\Bill_pro\Binary_Release
ECHO ON
PAUSE
REM (복제 시작 날짜, 시간을 기록합니다.)
ECHO ●[%DATE:~0,10% %TIME:~0,8%]>> D:\Users\Julyus25\Desktop\copy_result.txt
ECHO -Copy from [Source(pbl)] to "D:\Project\QPS_Iraq\src\Bill_pro\Binary_Release">> D:\Users\Julyus25\Desktop\copy_result.txt
xcopy D:\Project\QPS_Iraq\src\Bill_pro\Dev_QPS_BillPro\Source(pbl)\*.pbd . /d /s /c /y /i >> D:\Users\Julyus25\Desktop\copy_result.txt
ECHO -Copy from [Template2.0] to "D:\Project\QPS_Iraq\src\Bill_pro\Binary_Release">> D:\Users\Julyus25\Desktop\copy_result.txt
xcopy D:\Project\QPS_Iraq\src\Bill_pro\Dev_QPS_BillPro\Template2.0\*.pbd . /d /s /c /y /i >> D:\Users\Julyus25\Desktop\copy_result.txt
xcopy D:\Project\QPS_Iraq\src\Bill_pro\Dev_QPS_BillPro\Template2.0\*.dll . /d /s /c /y /i
xcopy D:\Project\QPS_Iraq\src\Bill_pro\Dev_QPS_BillPro\Template2.0\*.exe . /d /s /c /y /i /e
xcopy D:\Project\QPS_Iraq\src\Bill_pro\Dev_QPS_BillPro\Template2.0\*.jpg . /d /s /c /y /i
xcopy D:\Project\QPS_Iraq\src\Bill_pro\Dev_QPS_BillPro\Template2.0\*.bmp . /d /s /c /y /i
xcopy D:\Project\QPS_Iraq\src\Bill_pro\Dev_QPS_BillPro\Template2.0\*.gif . /d /s /c /y /i
xcopy D:\Project\QPS_Iraq\src\Bill_pro\Dev_QPS_BillPro\Template2.0\*.png . /d /s /c /y /i
xcopy D:\Project\QPS_Iraq\src\Bill_pro\Dev_QPS_BillPro\Template2.0\*.ico . /d /s /c /y /i
EXPLORER D:\Project\QPS_Iraq\src\Bill_pro\Binary_Release
REM Pause



[Sample#2]
COPY CON "원하는파일명".bat
-----------------------------------------------------------------------------------
ECHO OFF
SET DS=%DATE%
FOR /F "tokens=1-4 delims=-" %%A in ('echo %DS%') Do SET DS=%%A%%B%%C
REM 원하는 폴더로 이동 : 
D:
CD\
CD D:\DATA
REM 백업폴더 생성
IF NOT EXIST "Backup폴더명" MD "Backup폴더명\"%DS%
CD "Backup폴더명\"%DS%
REM 복사
XCOPY /E /Y "복사할파일명" "Backup폴더명\"%DS% > NULL
REM END
-----------------------------------------------------------------------------------



[Sample#3]
echo "지금 개발 중인 소스를 배포하시겠습니까?"
pause
  @echo off
  for /f "tokens=1-3 delims=- " %%A in ('echo %DATE%') do (set YY=%%A&SET MM=%%B&SET DD=%%C)
  d:
  cd\
  cd Develop\Workspace\_Release\
  mkdir Release_Daily
  mkdir Source(pbl)
  cd Source(pbl)
  cd..
  mkdir Template2.0
  cd Release_Daily
  mkdir %YY%-%MM%-%DD%
  CD %YY%-%MM%-%DD%
  mkdir Source(pbl)
  cd Source(pbl)
  cd..
  mkdir Template2.0
rem 중간날짜별 백업
xcopy D:\Develop\Source(pbl)\*.pbl d:\Develop\Workspace\_Release\Release_Daily\%YY%-%MM%-%DD%\Source(pbl) /D:%MM%-%DD%-%YY% /y
xcopy D:\Develop\Template2.0\*.pbl d:\Develop\Workspace\_Release\Release_Daily\%YY%-%MM%-%DD%\Template2.0 /D:%MM%-%DD%-%YY% /y
rem 최종배포버전(지정날짜:월-일-년)
rem xcopy D:\Develop\Source(pbl)\*.pbl d:\Develop\Workspace\_Release\Source(pbl) /D:02-01-2009 /y
rem xcopy D:\Develop\Template2.0\*.pbl d:\Develop\Workspace\_Release\Template2.0 /D:02-01-2009 /y

pause
EXPLORER "D:\Develop\Workspace\_Release"



Posted by Julyus