blah blah

더 이상 배치 스크립트는 짜지 않으리

batch 스크립트 작성하다가 성격 버릴뻔했다.
xp 에서는 choice 명령어가 없더라 … 그러면 어떻게 사용자 입력값 받아야 하지?
if 구문에서 대소문자 구분없이 비교하는 옵션이 -i 가 아니라 /i 더라 … 이거때문에 생쇼했다 (/? 한 번만 쳐봤어도 안할 고생을 … ㅉ)
아무 생각없이 copy 라고 했다가 여기서도 생쇼했다.

빨리 PowerShell 구문을 살펴보고 게로 넘어가자. 행여라도 앞으로는 이거 쓰지말자 ㅊ

[2007-03-09 추가]그래도 찜찜한건 끝내고 손떼야지 싶어서 …

choice 대신 set /p 구문을 써서 사용자 입력값을 처리할 수 있더라.

set /p _server=Enter Value – C/L/D :

if /i “%_server%”==”C” set SDIR=crp
if /i “%_server%”==”L” set SDIR=live
if /i “%_server%”==”D” set SDIR=dev

간단한 문자치환은 이런 식으로도 가능하더라

set CURDIR=%CD%
set BASEDIR=%CURDIR:~0,-9%\replace

위의 구문은 현재 디렉토리를 변수로 받아서 그 string 뒤에서 9자리를 잘라내고 “\replace” 로 대체하라는 작동을 한다.

p.s 많은 도움을 http://www.robvanderwoude.com 에서 찾을 수 있었다.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s