당장 필요하고 사용할 명령은 아니지만 평소 궁금했어고 도스명령어 질문 올린김에 이어 올려봅니다.
참고로 전 윈98 나올즈음 컴을 시작했고 도스는 한물 갔지만 기초부타하겠답시고 책사서 혼자 끙끙대봤지만 머리가 원체 나쁘고 해서 SET, IF 명령 반쯤보다가 접었는데요.


SET=C:\Temp
IF exist D:\Temp goto START

그래서 이 명령들도 위 수준까지 밖에 활용 못합니다. 그래도 아쉬운대로 배치파일을 많이 활용해서 사용하고 있습니다.
그런데 가끔 고수님들의 배치파일을 보면 간략하고 단촐하지만 실행해보면 나의 장황하고 어지러운 배치파일과 수행과정이 똑같다는 걸 보고 어쩔땐 황당하기까지한데요. 여러 많은 궁금증이 있습니다만 대표적으로 3가지만 꼽자면...



1,2 질문이 연관성이 있겠는데요.


<질문1>
간단 예를 들어볼께요.  윈도부팅디스켓 배치파일내용을 보면 이 시디가 A ~ Z 어느 드라이브에 삽입될지 모르는 상황인데 문제가 없이 시디롬내 파일을 엑세스해서 실행합니다. 어제께 알았는데요 %CD%가 이와 관련된 내부명령어 같습니다.

이제까지 전 ㅡ.ㅡ

IF exist C:\me.txt goto START
IF exist D:\me.txt goto START
goto ERROR

뭐 이런식으로 드라이브를 모두 나열해서 번잡하게 사용해왔습니다 ㅡ.ㅡ;



<질문2> 간단 예를 들자면
D:\Temp\all.bat
E:\Temp\backup.bat
E:\Temp\find.com


- all.bat 내용         ===  CALL E:\Temp\backup.bat
-backup.bat 내용   === START find.com

참고로 E:\Temp 는 PATH, SET=E:\Temp  명령이 걸려있지 않는 상태

backup.bat 과 START find.com이 동일 경로에 있기에 start.bat 만 실행한다면 굳이 START E:\temp 경로를 써주지 않아도 되겠죠. 그런데 All.bat 를 실행하면 실행경로가 달라지기에 find.com 이 실행되지 않습니다. 이 상황이 불변상황이라면 간단하게 E:\Temp\find.com 이라고 backup.bat 에 명시하면 되겠죠.

하지만 자주 경로명이 바뀐다면 ..
이를테면 E:\Temp 의 파일들이..  F:\ABC\Temp 로 옮겨진다면 배치파일은 매번 경로를 수정해야 할텐데요.

질문1과 마찬가지로 복잡장황하고 무식하게 배치파일은 만들면 되겠지만 SET 나 IF 를 활용해서 간단히 만들 수 있을 거 같아서 여쭤봅니다.



<질문3>
backup.bat 줄 맨끝에 del backup.bat  명령이 들어있던들.. backup.bat 은 수행중이기에 삭제가 되지 않습니다.
배치파일 수행 후 이파일을 삭제하고프면... backup.bat 안에서는 방법이 없는건지요?



<질문4>
IF %DATA% ==  어쩌구
다른분들 배치파일보면 이런식의 구문이 많은데요
==  <-- 이거의 의미는 뭔가요?  배우지 않은거라 긁적

톡톡 Talk Talk Talk
00:26 id: 호시스호시스[레벨:5] 끝말톡리본
00:25 id: 호시스호시스[레벨:5] 축하톡운수대통님 레벨업 축하합니다
00:25 id: 호시스호시스[레벨:5] 축하톡쥬우우님, 해름님, 아쿠아티스님 회원가입...
00:25 id: 호시스호시스[레벨:5] 출석톡출석합니다
00:17 id: 우리모두우리모두[레벨:9] 끝말톡북소리