메뉴 건너뛰기


Developer > Operating System

MS-DOS SET 명령어

2014.08.26 18:31

푸우 조회 수:6606


SET 명령어


cmd.exe 환경 변수를 보여주거나 설정하거나 지웁니다.


SET [변수=[문자열]]


  변수      환경 변수 이름을 지정합니다.

  문자열    변수에 할당할 문자열을 지정합니다.


매개 변수 없이 'SET'이라고 입력하면, 현재 환경 변수를 볼 수 있습니다.



- 사용자 변수 생성 및 사용하기

SET 명령을 통해 사용자 변수를 생성하고 변수 앞뒤에 %를 붙여 참조 할 수 있습니다.


SET MYVAR=MyVal
ECHO %MYVAR%



- 사용자 변수 삭제하기

"SET 변수="과 같이 문자열을 지정하지 않으면 해당 변수가 삭제됩니다.


SET MYVAR=
ECHO %MYVAR%



- SET 명령의 확장

SET명령어의 확장으로 새롭게 추가된 /A와 /P 스위치를 사용할 수 있습니다.


    SET /A 표현식

    SET /P 변수=[promptString]


/A 스위치는 = 기호의 오른쪽에 있는 문자열이 수식임을 지정합니다.

/P 스위치는 변수의 값을 사용자가 입력한 입력 줄에 설정하도록 허용합니다. 입력 줄을 읽기 전에 지정한 promptString을 표시합니다.



- /A 스위치 사용하기

표현식에 다음과 같은 연산자들을 사용할 수 있습니다.


    ()          - 그룹 짓기

    ! ~ -               - 단일 연산자

    * / %               -  산술 연산자

    + -                 - 산술 연산자

    << >>               - 논리 이동

                       - 비트단위 and

    ^                   - 비트단위 상호 배제 or

    |                   - 비트단위 or

    = *= /= %= += -=    - 할당

     &= ^= |= <<= >>=

    ,                   - 식 구분 기호


표현식에 숫자나 연산자가 아닌 문자가 나타나면 이를 변수로 취급합니다.

즉, /A스위치 상에서 변수의 참조는 변수 앞뒤에 붙이는 %를 생략할 수 있습니다.

사용된 문자열에 의해 참조할 변수가 정의되어 있지 않다면 0의 값을 갖습니다.

숫자는 0x(16진수), 0(8진수)의 접두어를 사용하여 표현할 수 있습니다.


다음은 예입니다.

SET ONE=1
SET /A TWO=ONE+ONE
SET /A THREE=ONE+TWO
SET /A SEVEN=(ONE+TWO)*TWO+ONE+ZERO

- /P 스위치 사용하기

사용자로부터 입력받은 값을 변수로 저장할 수 있습니다.


SET /P ANSWER=정말로 삭제하시겠습니까? [Yes/No] ^>
ECHO %ANSWER%



크리에이티브 커먼즈 코리아 저작자표시 Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-동일조건변경허락/3.0에 따라 이용하실 수 있습니다