* Host 환경 ::: Windows Server 2008 R2 with Hyper-V 
   HP ProLiant DL580 G5 * 3대 : Fail-Over Clustering
   HP ProLiant DL380 G6 * 1대 : Stand Alone

* Guest(VM) 환경 ::: Windows Server 2003 R2(32Bit)
   Windows Server 2008 R2 : CPU 2Core, Memory 4Gb * 20대
   VHD위치: 내장디스크 / 동적증가

* WEB: IIS 5.0 (ASP) / DB: MS-SQL 2008

* 소요기간 6일 중 시스템 구성 ::: 1일(실제로는 반나절?!?)

* 금차 시스템을 운용을 위해 추가적인 장비도입 및 구성없이 기 운용되고 있는 시스템에 VM만 추가 구성
   Host 4대에 이미 46대의 VM이 운용되고 있었으며, 신규 20대의 VM을 사용량에 따라 적절히 분배(하기의 이미지 참조)


* 상세내용은 첨부파일 참조~^^

Windows Server 2003에서는 Media Services가 프로그램 추가/제거에서 기본 탑재되어있지만,
Windows Server 2008에셔는 기본 포함이 아닙니다. 이에 하기의 링크를 참고하여, OS에 맞게끔 다운받도록 합니다.

* Windows Server 2008 (Windows6.0-KB934518)
http://www.microsoft.com/downloads/details.aspx?displaylang=ko&FamilyID=9ccf6312-723b-4577-be58-7caab2e1c5b7

* Windows Server 2008 R2 (Windows6.1-KB963697)
http://www.microsoft.com/downloads/details.aspx?FamilyID=b2cdb043-d611-41c9-91b7-cddf6e5fdf6b&displayLang=ko

다운 받은 파일을 설치후 Roles에서 Check 하여 설치합니다.

윈도우에서 네트웍 드라이브 연결 설정

NET USE
[장치 이름 | *] [\\컴퓨터 이름\공유 이름[\볼륨] [암호 | *]]
        [/USER:[도메인 이름\]사용자 이름]
        [/USER:[점으로 구분된 도메인 이름\]사용자 이름]
        [/USER:[사용자 이름@점으로 구분된 도메인 이름]
        [/SMARTCARD]
        [/SAVECRED]
        [[/DELETE] | [/PERSISTENT:{YES | NO}]]

NET USE {장치 이름 | *} [암호 | *] /HOME

NET USE [/PERSISTENT:{YES | NO}]


ex)
연결되어있는 네트웍 드라이브 현황 - net use

폴더 접근 공유 - net use \\서버IP\"공유되어있는 폴더" /user:ID PWD
네트웍 드라이브 연결 - net use [Drive Letter] \\서버IP\"공유되어있는 폴더" /user:ID PWD

폴더 접근 공유 끊기 - net use \\서버IP\"공유되어있는 폴더" /delete /y
네트웍 드라이브 연결 - net use [Drive Letter]  /delete /y

가상서버에서 가상서버 호스트 찾기

 Hyepr-V로 서버가상화를 운용하고 있을 때, 레지스트리 값으로 가상서버 호스트를 찾아보자.

 1. 시작 -> 실행 -> regedit

HKLM\SOFTWARE\Microsoft\Virtual achine\Guest\Parameters\PhysicalHostNameFullyQualified



 2. 다음과 같이 Batch파일을 만들어서 실행 합니다.

@echo off
@echo .
@echo .
@echo .
@echo Physical host of this virtual machine is indicated in this registry key:
REG QUERY "HKLM\SOFTWARE\Microsoft\Virtual Machine\Guest\Parameters" /v PhysicalHostNameFullyQualified
@echo .
@echo .
@echo .



출처: http://www.mekong.net/tech/identify_server_host.htm
- 출처에는 BGinfo에서 사용할 수 있게끔 설정하는 것이 있다. 그중 필요한 내용만 발췌

클릭 한번으로 화면잠그기...


바로 가기를 만들어서, 주소를 하기와 같이


%windir%\system32\rundll32.exe user32.dll,LockWorkStation

"고급 Bash 스크립팅 가이드" 라는 주제로 강좌개설되어있는 곳입니다.

http://terminus.pe.kr/doc/abs/


이 가운데 DOS용에서 살펴볼 수 있는 내용~~~^__^ 임돠~


도스(DOS) 배치 파일을 쉘 스크립트로 변환

아주 많은 프로그래머들은 PC 위에서 도는 도스에서 스크립트를 배웠습니다. 기능이 조금 떨어지는 도스 배치 파일 언어로도 꽤 강력한 스크립트나 어플리케이션을 작성할 수도 있지만 그렇게 하려면 아주 해박한 지식을 사용해 해결책을 찾거나 꽁수를 부려야 합니다. 가끔은 오래된 도스용 배치 파일을 유닉스 쉘 스크립트로 변환해서 써야될 경우가 생기지만 이렇게 하는것이 그렇게 어렵지만은 않습니다. 왜냐하면 도스 배치 파일 연산자들이 기능이 동일한 쉘 스크립트 연산자의 서브셋에 불과하기 때문입니다.

표 G-1. 배치 파일 키워드/변수/연산자 와 그에 해당하는 쉘 동의어

배치 파일 연산자 쉘 스크립트 동의어
% $ 명령어줄 매개변수 접두사
/ - 명령어 옵션 플래그
\ / 디렉토리 패스 구분자
== = (같음) 문자열 비교 테스트
!==! != (다름) 문자열 비교 테스트
| | 파이프
@ set +v 현재 명령어를 에코하지 말 것
* * 파일명 "와일드 카드"
> > 파일 재지향(덮어 쓰기)
>> >> 파일 재지향(덧붙여 쓰기)
< < 표준입력 재지향
%VAR% $VAR 환경 변수
REM # 주석
NOT ! 뒤에 나오는 테스트 부정
NUL /dev/null 명령어 출력을 없애기 위한 "블랙홀"
ECHO echo 에코 (Bash 에는 옵션이 많이 있음)
ECHO. echo 빈 줄 에코
ECHO OFF set +v 다음에 나오는 명령어를 에코하지 말 것
FOR %%VAR IN (LIST) DO for var in [list]; do "for" 루프
:LABEL 없음 (필요치 않음) 라벨
GOTO 없음 (대신 함수를 씀) 스크립트의 다른 곳으로 건너 뜀
PAUSE sleep 일정 간격을 두고 잠시 대기
CHOICE case 나 select 메뉴 선택
IF if if-test
IF EXIST FILENAME if [ -e filename ] 파일이 존재하는지 확인
IF !%N==! if [ -z "$N" ] 변경가능한 매개변수인 "N"이 없다면
CALL source 나 . (도트 연산자) 다른 스크립트를 "포함"
COMMAND /C source 나 . (도트 연산자) 다른 스크립트를 "포함"(CALL과 동일)
SET export 환경 변수를 세트
SHIFT shift 명령어줄 변수 목록을 왼쪽으로 이동(shift)
SGN -lt or -gt (정수) 부호(sign)
ERRORLEVEL $? 종료 상태
CON stdin "콘솔"(표준입력)
PRN /dev/lp0 (일반적인) 프린터 디바이스
LP1 /dev/lp0 첫번째 프린터 디바이스
COM1 /dev/ttyS0 첫번째 시리얼 포트

배치 파일은 대개 도스 명령어를 갖고 있습니다. 도스용 배치 파일이 쉘 스크립트로 변환되기 위해서는 이 명령어들은 꼭 동일한 유닉스 명령어로 변환되어야 합니다.

표 G-2. 도스 명령어와 동일한 유닉스 명령어

도스 명령어 동일한 유닉스 명령어 효과
ASSIGN ln 파일이나 디렉토리를 링크
ATTRIB chmod 파일 퍼미션 변경
CD cd 디렉토리 변경
CHDIR cd 디렉토리 변경
CLS clear 스크린 지우기
COMP cmp or diff 파일 비교
COPY cp 파일 복사
Ctl-C Ctl-C 정지(시그널)
Ctl-Z Ctl-D EOF (end-of-file)
DEL rm 파일 삭제
DELTREE rm -rf 디렉토리의 하위 디렉토리까지 포함해서 삭제
DIR ls -l 디렉토리 보이기
ERASE rm 파일 삭제
EXIT exit 현재 프로세스 종료
FC comm, cmp 파일 비교
FIND grep 파일안에서 문자열 찾기
MD mkdir 디렉토리 생성
MKDIR mkdir 디렉토리 생성
MORE more 텍스트 파일 쪽단위(paging) 필터
MOVE mv 이동
PATH $PATH 실행파일들의 경로
REN mv 이름 바꾸기(이동)
RENAME mv 이름 바꾸기(이동)
RD rmdir 디렉토리 삭제
RMDIR rmdir 디렉토리 삭제
SORT sort 파일 정렬
TIME date 시스템 시간 보여주기
TYPE cat 파일을 표준출력으로 출력
XCOPY cp (확장) 파일 복사

참고: 사실 모든 유닉스, 쉘 연산자, 명령어들은 그들과 동일한 도스용보다 많은 옵션과 강력한 기능을 갖고 있습니다. 많은 배치 파일 스크립트들은 read의 불완전한 버전인 ask.com같은 외부 유틸리티에 의존합니다.

도스는 파일명 와일드 카드 확장에 대해서 오직 *? 문자만을 인식하는 제한되고 부족한 서브셋을 지원합니다.

도스 배치 파일을 쉘 스크립트로 변환하는 것은 일반적으로 매우 간단하고 가끔은 변환된 쉘 스크립트가 원래 도스 배치 파일보다 더 이해하기 쉬운 경우도 있습니다.

예 G-1. VIEWDATA.BAT: 도스용 배치 파일

REM VIEWDATA

REM PAUL SOMERSON의 "DOS POWERTOOLS"의 예제에서 영감을 받아 작성


@ECHO OFF

IF !%1==! GOTO VIEWDATA
REM  명령어줄 인자가 없다면...
FIND "%1" C:\BOZO\BOOKLIST.TXT
GOTO EXIT0
REM  문자열이 일치하는 줄을 출력후 종료.

:VIEWDATA
TYPE C:\BOZO\BOOKLIST.TXT | MORE
REM  한 번에 한 쪽씩 전체 파일을 보여줌.

:EXIT0

스크립트 변환을 하면 기능이 다소 개량됩니다.

예 G-2. viewdata.sh: VIEWDATA.BAT 의 스크립트 버전

#!/bin/bash
# VIEWDATA.BAT 를 쉘 스크립트로 변환.

DATAFILE=/home/bozo/datafiles/book-collection.data
ARGNO=1

# @ECHO OFF       여기서 이 명령어는 필요없습니다.

if [ $# -lt "$ARGNO" ]    # IF !%1==! GOTO VIEWDATA
then
  less $DATAFILE          # TYPE C:\MYDIR\BOOKLIST.TXT | MORE
else
  grep "$1" $DATAFILE     # FIND "%1" C:\MYDIR\BOOKLIST.TXT
fi  

exit 0                    # :EXIT0

# GOTO, 라벨, 속임수, 엉터리 구문등이 필요없어졌죠.
# 원래 배치 파일보다 더 짧고, 더 쉽고, 더 깔끔합니다.

자료출처 : http://blog.empas.com/comoff/23024214

출처 : http://tinyworld.tistory.com/80" target=_blank>http://fs.tistory.com/custom/blog/3/33583/skin/images/frame.html?http://tinyworld.tistory.com/80
 
Batch 파일
 
도스에는 명령어를 일괄적으로 처리하기위한 배치파일이라는 것이 있습니다.
대부분의 사람들은 배치파일이 도스환경을 쉽게 만든다는 사실을 과소평가하는데, 컴퓨터를 좀더 쉽게 사용하고 싶다면 배치파일을 꼭 짚고 넘어가는것이 좋습니다.

배치파일이란 ?
컴퓨터의 동작 상태를 살펴 보면 항상 사용자와의 상호작용에 의하여 작업이이루어진다는것을 알 수 있습니다.  도스라는 운영체제도 사용자가 명령을 입력하면 그 명령에 대해 도스가 분석하여 사용자가 원하는 실행 결과를 제공합니다.
따라서 사용자는 항상 도스 프롬프트 상에서 일일이 키보드를 이용한 타이핑으로 명령을 내려야 하고, 하나의 명령이 내려지면 완료될 때까지 다음 명령을 내릴수가 없습니다. 작업 과정이 얼마되지 않는다면 큰 상관이 없으나 그 과정이 매우 길고 복잡하다면 사용자는 지루함을 느끼게 됩니다. 또한 비록 짧은 작업과정이라도 컴퓨터를 켤때마다 매번 똑같은 과정을 일일이 지시하는 것도 귀찮을 것입니다.
이러한 경우 배치 파일은 가장 확실한 해결책입니다.

배치파일의 기능은 순차적이고 반복된 동일한 작업 과정을 몇개의 혹은 수십, 수백 개의 연관된 명령어를 하나의 파일로 집약하여 그 하나의 파일(배치파일)만 실행함으로써 원하는 작업 과정을 수행하는것입니다.배치파일에 붙는 확장자는 .bat(batch 의 약어) 입니다.도스에서 실행이 가능하기 때문에 .com, .exe 확장자가 붙는 외부 명령어와 함께 실행 가능한 파일로 분류됩니다.차이가 있다면 .com, .exe 명령어는 컴퓨터만 해석 가능한 기계어 코드로 구성되어 있는반면, 배치 파일은 사람이 알아볼수 있는 일반 텍스트로 이루어져있다는 것입니다.

그래서 사용자들은 문서작성에 이용하는 워드프로세서나 텍스트에디터 등을 이용해 배치 파일을 작성할 수 있습니다. 그러나 워드프로세서는 덩치가 크고 원래 목적이 편집과 출력을 위해 만들어진 것이므로 단순한 배치 파일을 작성하는 데는 권하고 싶지 않습니다.

저장할때도 워드프로세서 고유의 포맷(예" .hwp 확장자를 가지는 아래아한글 데이터 파일)으로 저장하면 인식이 되지 않으므로 아스키 파일로 저장해야 합니다.가장 편리한 방법은 일반 문서 에디터( 도스의 Edit, Q에디터,U에디터 등)를 이용하거나 도스의 'Copy Con' 명령으로 배치 파일을 만드는 것입니다.다음과 같이 'Copy con 파일명' 형식으로 입력하고 엔터를 누르면 도스 프롬프트 상태에서 편집할 수 있는 상태가 됩니다.
-------------------------------
C:Bats> copy con Timedate.bat
cls
time
date
^Z

   1 File(s) copied
-------------------------------
여기서 쓰고 싶은 대로 적기만 하면 됩니다.제일 마지막행의 ^Z 는 파일의 제일 마지막 부분이라는 것을 도스에게 알려주는 코드로 <  Ctrl + Z > 키 또는 F6 키를 누르면 됩니다. 그리고 엔터키를 한번더 누르면 '1 File(s) copied' 라는 메세지가 출력되는데, 이는 방금 ' copy con 파일명 ' 으로 작성된 문서파일이 성공적으로 만들어졌다는 뜻입니다.위의 문서파일은 확장자가 .BAT 로 붙었기 때문에 실행가능한 외부 명령어가 되는데, 배치파일은 명령이 기록되어 있는 순서대로 실행되기 때문에 timedate.bat 를 실행시키면 먼저 화면을 지우고 난뒤 시스템의 시간과 날짜를 설정합니다.간단한 배치파일은 'copy con 파일명' 으로 작성하는 것이 다른 프로그램의 도움없이 쉽고 빠르게 처리할 수 있습니다. 하지만 배치파일이 조금 길거나 작성중에 수시로 편집할 일이 생기는 경우에는 불가능합니다. 'copy con 파일명' 으로 파일을 작성하면 행으로 다시돌아갈 수 없을 뿐 아니라 수정이 불가능하기 때문입니다. 그러므로 배치파일을 만들 필요가 있을때는 문서 에디터를 이용하는 것이 좋습니다.

▶  
배치파일 작성 명령어 9인방

배치 파일은 파일 안에 기록되어 있는 명령의 순서대로 실행됩니다.가장 대표적인 것이 부팅에 이용되며, 컴퓨터의 루트 디렉토리에 위치하고 있는 Autoexec.bat 파일입니다. 그런데 만약 배치 파일의 실행의 순서를 순차적이 아닌멀티부팅용 Autoexec.bat 처럼 사용자 마음대로 정하고 싶다면 배치파일에 제공되는배치명령어의 용도를 알고 있어야 합니다.


1. CALL


현재 실행중인 배치 파일을 종료하지 않고 필요한 다른 배치파일을 호출하여 실행한 다음 원래의 배치파일로  다시 돌아오려고 할 때 사용됩니다.

◇ 사용법 : Call [drive:][경로]<배치파일명>[.BAT]

◇ 예  :  Call c:batssample.bat

어떤 배치 파일을 실행하는 도중에 경로 C:bats 에 있는  sample.bat 파일을 실행한 다음 다시 원래의 배치파일로 돌아옵니다.


2. CHOICE

배치 프로그램 내에서 사용자의 선택을 묻기 위해 사용됩니다. 배치 파일 제작자가 설정한 물음을 출력하면서 지정된 키 입력을 기다립니다. 이 명령은 배치파일 내에서만 사용 가능합니다.

◇ 사용법 :choice [/C[:]문자열][/N][/S][/T[:]기본키,대기시간][메세지]

◇ 옵션

- /C[:]문자열  : 사용자가 선택할 수 있는 키목록을 [] 괄호 내에 ', ' 로 구분하여 출력하고  /C 스위치를 사용하지 않으면 기본적으로  YN이 사용됩니다.

- /N : 프롬프트를 출력하지 않도록 합니다.

- /S : 사용자의 입력에서 소문자, 대문자를 구분하도록 합니다.

- /T[:]기본키, 대기시간 : 기본키를 지정한 후 대기시간 동안 사용자의 키 입력이 없으면  자동적으로 기본키가 입력된 것으로 간주하고 진행됩니다. 지정 가능한 대기시간은 초단위이며 0에서 99 사이의 값입니다.

- 메세지 : 화면에 출력될 메세지를 지정합니다.

◇ 예 : choice /c:abCD /s /t : C, 5 다음중에서 하나를 선택하십시오 a, b, C, D
◇ 설명 : 입력 가능한 키를 a,b,C,D로 한정하며 사용자로부터 입력되는 영문자의 대,소문자를 구분하는데, 만약 5초 내에 사용자로부터 키 입력이 없다면 C 가 입력된 것으로 간주합니다. 그리고 화면에는
'다음중에서 하나를 선택하십시오 a, b, C, D[a,b,C,D]? '
라는 메세지가 출력됩니다.


3. ECHO

배치파일 실행중에 명령어를 화면에 표시할 것인지의 여부를 설정하며, 그 상태를 표시합니다. 한편 ECHO 명령 뒤에 오는 메세지는 화면에 나타납니다.

◇ 사용법 : echo [on/off] [문자열]

◇ 옵션
- on : 배치 파일 실행중에 그 배치 파일 내의 명령어를 화면에 표시합니다.
- off : 배치 파일 실행중에 명령어를 화면에 출력하지 않도록 합니다.
- 문자열 : 화면에 출력하고 싶은 메세지를 적어줍니다.
- 없음 : 현재 ECHO 설정 상태를 표시합니다.

◇ 예  :

echo off   
☞ 현재 실행중인 배치 파일 내의 명령어를 화면에  나타나지 않도록 함.
echo
echo 안녕하세요?~
☞ 현재 echo 설정상태를 표시하며  안녕하세요?~ 라는 문구를 화면에 출력합니다.  


4. FOR

지정된 집합 중의 각각의 요소에 대하여 명령으로 설정한 처리를 반복 실행합니다.

◇ 사용법

For %%<변수> IN (<집합>) DO <명령> [<옵션>]    ☞ 배치파일용.
For %<변수> IN (<집합>) DO <명령> <옵션>]        ☞ 순차처리용.


◇ 옵션

- %%<변수>, &<변수>  : 변수로 사용되는 것은 임의의 영문자로 1자만 허용됩니다.  주의할 점은 배치파일에서 사용할 경우는 반드시 %%처럼 두개를 연달아 사용해야 하며, 일반 도스 프롬프트에서 사용할 때는 % 하나만 사용합니다.

- <집합> : %%<변수>에 대입하고 싶은 값을, 또는 스페이스로 구분하여 대입하고 싶은 순서대로 나열합니다.

- <명령> : %%<변수>에 대입되어 있는 값에대해 반복적으로 실행하고 싶은 명령을 지정합니다.

- <옵션> : 지정한 명령의 옵션이나 FOR 명령에서 지정한 옵션을 설정합니다.

◇ 예

for  %%f  in  (bak tmp $$$) do del *.%%f /p       ☞ 배치파일의 경우
for %d  in  (read,wh,file) do hlist %d*.*              ☞ 도스 프롬프트에서 실행시

◇ 설명 : 첫 번째는 bak, tmp, $$$ 를 순서대로 %%f 환경 변수에 대입하여 차례대로
 DEL *.bak /p, DEL *.tmp /p, DEL *.$$$ .p 를 실행한 것과 동일한 결과를 얻게됨.

두번째는 READ,WH,FILE 를 순서대로 %d 환경변수에 대입하여 차례대로
 HLIST READ*.*, HLIS TWH *.* , HLIST FILE *.* 를 실행한 것과 동일한 결과를 얻게 됩니다.


5. GOTO

배치 처리의 흐름을 <레이블>에서 정의되어 있는 위치로 옮깁니다.

◇ 사용법 : Goto <레이블>

◇ 예 :
goto loop
:loop
각종 처리할 내용


◇ 설명  : 레이블 loop 로 배치 처리의 제어권을 이동시켜 loop 항목에 지정된 각종 처리할 내용을 실행시킵니다.

◇ 참고  : 배치 파일에 레이블 표시는 레이블명 앞에 콜론(:) 을 붙여주며 줄을
              바꿔 맨 앞에 지정해 주어야 합니다.



6. IF

지정한 조건의 판단 결과에 따라서 배치 처리를 진행합니다.

◇ 사용법 :  If [NOT] <조건> <명령>

◇ 옵션

- NOT : 지정한 조건의 반대 조건일 때만 실행합니다.

- 조건

- ERRORLEVEL <수치> : 바로 전에 실행한 명령(프로그램)의 종료 코드가 <수치> 이상일 때에는 참이 되고 <명령> 이 실행됨.

- <문자열1> == <문자열2> : <문자열1> 과 <문자열2> 가 같을 때에만 참이되고 <명령>이 실행됩니다. 주의할 점은 문자열의 대,소문자가 구별되며, 문자열중에 구분기호(콤마,스페이스,세미콜론,등호,탭)가 포함되어 있으면 않됩니다.

- EXIST <파일명> : <파일명>으로 지정한 파일(경로포함)이 존재할 때에만 참이 되고    <명령>이 실행됩니다. <파일명>에는 와일드카드 문자의 사용이 가능합니다.

◇ 예 :
if errorlevel 2 goto quit
if not %1 ==%2 goto process
if exist d:worktemp.$$$ del d:worktemp.$$$


◇ 설명 :
직전에 실행한 명령의 종료 코드가 2 이상일 경우 레이블  QUIT로 이동합니다.

환경변수 %1과 환경변수 %2에 대입되어 있는 문자열이 같지 않을 경우에만 레이블 PROCESS 로 이동합니다.

경로 D:Work 에 temp.$$$ 라는 파일이 존재하면 그 파일을 삭제합니다.


7. PAUSE

배치 파일 실행을 일시 정지합니다.

◇ 사용법 : Pause [문자열]

◇ 옵션

- 문자열 : 문자열을 생략하면 'press any key to continue...'라는 메세지가 화면에  출력됩니다. 만약 PAUSE 명령 뒤에 어떤 메세지를 지정하여 그 메시지를  출력하고 싶다면 'Echo On' 명령을 우선 내려야 합니다.

◇ 예 :   
 echo on
 pause  준비가 되었으면 아무키나 누르세요...


◇ 설명 :  배치 처리 중 pause명령을 만났을때 임의의 다른 메시지를 화면에 출력하고 싶다면 예 에서와 같이 반드시 echo on 명령이 선행되어야 하며 예의 경우에는  ' 준비가 되었으면 아무키나 누르세요...' 라는 메세지가 출력됩니다.

◇ 참고 :  위 처럼 하면 화면에 Pause 라는 명령어까지 같이 출력되므로 이런경우
echo on
echo  준비가 되었으면 아무키나 누르세요...
pause > Null


이런식으로 사용하면 출력하고자 하는 메세지만 화면에 출력됩니다.


8. REM

배치 파일 내에 주석문을 부여하고 싶을 때 사용합니다.

◇ 사용법 : rem [문자열]

◇ 옵션    

- 문자열 : 주석문으로 쓰고 싶은 것을 적어줍니다.

◇ 예 : REM 이 배치파일은 샘플입니다.

배치파일내의 적당한 위치에 적절한 주석문을 붙여두면 배치 처리의 흐름을 일목요연하게 볼 수 있습니다.


9. SHIFT

배치 파일에 주어진 파라미터(%1~%9)와 실행시에 지정되는 값과의 대응을 하나씩 뒤로 이동하여 표시합니다.

◇ 예

:loop
if "%1" == " " goto end
echo %0 %1 %2 %3 %4 %5 %6 %7 %8 %9
shift
goto loop
:end    


위와 같이 배치 파일을 작성해두고 다음과 같이 배치파일을  실행해 보면 shift 명령이 어떤 역할을 하는지 금방 알 수 있습니다..
C:bats> test.bat A B C D E F G H I J 0 1 2 3 4 5  똑같이 입력하고 실행후 확인
 

Overview

The SQL Server 2005 Best Practices Analyzer (BPA) gathers data from Microsoft Windows and SQL Server configuration settings. BPA uses a predefined list of SQL Server 2005 recommendations and best practices to determine if there are potential issues in the database environment.

This download is the July 2007 release of SQL Server 2005 Best Practices Analyzer.

MS Link

어떤 결과가 나오는지에 대해서는 아직 테스트 전~~ 입니다. ㅎㅎ

+ Recent posts