728x90
반응형


요약

echo 명령어로 % 를 출력하려면 %% 를 두 번 써줍니다.

 

 

 


문제상황

아래와 같은 batch script를 스크립트로 작성해야하는 상황이 있다고 가정해 보시죠.

 

변수를 aiaa로 설정하고, 그 변수를 호출해서 메시지를 출력하는 간단한 스크립트 입니다.

 

 

이런 스크립트를 써주는 스크립트는 다음과 같이 생각할 수 있겠습니다.

 

필요한 명령어를 echo로 써서, out_script.bat이라는 파일에 써주면 될 거 같은데...

 

 

이 스크립트를 실행시키면, 아래와 %my_variable% 가 써지는게 아니라, aiaa로 셋업해 놓은 변수(사실 이것도 의도한 바가 아니긴 하죠)가 대신 들어가 있습니다.

 

%변수이름%는 선언된 변수를 호출하다보니, 실제 쓰고 싶은건 %my_variable%를 쓰고 싶었는데도 my_variable 변수에 할당된 aiaa가 들어가게 됩니다.

 

티나지 않는 버그일 수 있으니 주의가 필요한 부분이라고 생각합니다.

 

그렇다면 어떻게 글자 그대로 batch 스크립트에서 %를 써줄 수 있을까요?

 

 

 


해결방법

해결방법은 간단합니다.

 

%를 그대로 쓰기 위해서 %% (퍼센트 두 번)을 써주면, % 글자 그대로 인식하게 됩니다.

 

%변수이름% 문자 그대로를 echo를 통해 batch script로 쓰고 싶다면, %%변수이름%% 으로 사용하고,

%%% 문자 그대로를 쓰고 싶다면, %%%%%%로 사용하면 됩니다.

 

 


조금이나마 도움이 되었으면 좋겠습니다!

 

728x90
반응형

+ Recent posts