강좌 / 팁

소프트웨어 배치파일 사용자 설정 파일 구현하기

2020.01.01 18:59

히이이잌 조회:2273 추천:9

 

다른 사람을 위한 배치파일을 만들려는 사람들에게만 필요한 팁이므로 어느 정도 알고 있다는 전제하에 설명합니다.

 

ini.jpg

몇몇 프로그램들은 위와 같이 텍스트 파일을 수정하여 응용프로그램의 설정을 쉽게 변경할 수 있는 경우가 있습니다.

배치파일로 비슷한 흉내를 내는 방법이 없을까 고민하다가 예제를 만들어 보았습니다.

 

 

133.jpg

예제.zip 

CONFIG.txt 파일은 .ini 파일의 역할을 합니다. 

test.cmd는 CONFIG.txt 파일을 읽어서 변수에 저장하는 역할을 합니다.

 

즉, 위 예제 파일에서 cmd파일은 건들지 않고

CONFIG 파일의 2번, 3번 뒤의 30, 50 숫자를 변경한 뒤에 test.cmd를 실행하면 덧샘 결과가 바뀌게 됩니다.

 

 

 

원리는

 

for /f "usebackq tokens=1,2 delims=▶" %%a in ("CONFIG.txt") do IF 1%%a EQU +1%%a set "CONFIG_VAR%%a=%%b"

위 명령을 통해 CONFIG.txt를 읽어서, 1번 토큰이 숫자인 경우에만 1번 토큰의 이름을 가진 변수에 2번 토큰의 값을 저장합니다.

 

FOR 명령에 대한 기본적인 이해는

https://www.snoopybox.co.kr/1366 을 참조하시고,

 

1번 토큰이 숫자인가?를 구분하기 위해선

변수 앞에 +1을 추가한것과 그렇지 않은것이 동일한가를 IF 문으로 비교해서 판단합니다.

(배치파일에서 11과 +11은 같다고 판단하는걸 이용합니다.)

 

번호 제목 글쓴이 조회 추천 등록일
[공지] 강좌 작성간 참고해주세요 gooddew - - -
4383 비스타에서 kmp 하드웨어 가속 [8] 배터져 10608 0 02-05
4382 Windows server 2008 무선인터넷 이용하자~(노트북 이용자 ... [2] 모르고하다 8824 0 02-06
4381 서팩 1 설치 [5] 비학 8208 0 02-06
4380 A.I_08.02.07 New PDF 사용 설명서 [3] David Lee 27609 0 02-07
4379 FREE dreamscenes 다운로드 [3] 지박 7133 0 02-07
4378 RC2 & RTM [13] 논란이 7886 0 02-08
4377 [펌] 파코즈에 올라온 SP1 해부하기 [끝까지 읽어보셔야 할듯] [3] 논란이 12838 0 02-08
4376 acpi vista loader 2.1.2 메시지 이후 아무런 반응 없을 때. [1] Vista 7855 0 02-09
4375 영문판 SP1 RTM 버전에 한글 MUI 통합되네요 [55] snoopy 14205 0 02-10
4374 아래 MUI 통합된 스샷 추가입니다 [10] snoopy 12195 0 02-10
4373 Snoopy VISTA SP1 KOR INTEGRATED 설치후기 [10] gnrl 14750 0 02-12
4372 [해결했습니다.] Vista64종료시 30초 이상 ...??? [17] 기가매니아 15848 0 02-12
4371 에러 나는 하드를 쉽게 고치는 팁? [9] 2008년이다 9015 1 02-13
4370 내 Windows에서 메모리 4기가가 왜 다 나오지 않지? [6] DuDu 10293 0 02-14
4369 2008 server에서 rearm+timerstop으로 정상작동.... [9] 갈매기 6690 0 02-17
4368 .wim 파일 수정하기 (install.wim..등) [3] WIM 18735 1 02-19
4367 비스타 창 두께 줄이기 [5] 클레사 10192 0 02-20
4366 비스타 64비트에서 지원되지않는 거의모든프로그램을 쓸 수... [16] Star★Bros 11116 0 02-21
4365 [re] 차라리 이 방법이 더 낫지 않을까요? [5] ULTIMATEK 7510 0 02-21
4364 한글 비스타에서 영문 비스타 글씨체(Segoe UI)를 쓰는 방법 [6] Bums 9810 0 02-21
XE1.11.6 Layout1.4.8