강좌 / 팁

윈 도 우 [배치파일] 볼륨일련번호(ID)로 드라이브명 찾기

2016.05.10 16:03

메리아 조회:2445 추천:3


USB등을 통해 연결하는

플래시메모리나 외장하드가 있을때,

드라이브 레터(C:,D:,E: ...)가 항상 고정되지 않고 바뀌는 경우가 있습니다.


같은 컴퓨터라고 해도 바뀔수 있고,

다른 컴퓨터라면, 바뀔 확률이 엄청나게 높아지죠. 거의 반드시라고 해도 좋을정도로...


그런데 그런 USB로 하고 싶은 작업은 다들 많으실거고,

특히 백업, 복원(딱히 툴을 쓰지않고 xcopy 명령만 쓴다거나) 등 똑같은 작업을 자주할때가 많죠.

그런데 위에 말한거 처럼 USB의 드라이브명이 고정되지 않고 바뀐다면?

배치파일 쓸 때, 일일이 USB쪽 드라이브 명을 다 수정해줘야합니다.



첨부하는 배치파일은 바로 "자동으로" 드라이브명을 잡아주는 예제입니다.

잡아주는 방법은 볼륨일련번호(ID)로 구분하는 것으로서, 포맷할 때마다 임의로 바뀌므로, 포맷만 안하면 일정합니다.

이것을 쓰면 USB의 드라이브 레터 같은 것을 신경쓰지 않아도 됩니다.


배치파일이므로,

PC에 넣어놨다가 USB연결 되었는지 자동으로 확인해서 작업을 해도 되고,

USB에 넣어놨다가 USB꽂고, USB열어서 배치파일을 클릭해서 작업을 할 때 쓸 수도 있습니다.

(ex. PC에서 특정 파일을 USB로 복사해서 백업,

       USB에서 C드라이브에 복사해서 복원 or 실행 등)



사용하기전에 최초 1회는 직접 편집해서,

볼륨ID를 설정해줘야합니다.

볼륨ID는 아래와 같이 dir로 간단하게 확인 가능합니다.


볼륨일련번호.png




배치파일을 열어보면 꽤 복잡한(?)처리가 많은데,

XP와 윈7이후가 달라서, OS 구분이 필요하기 때문에 복잡해졌습니다.

XP, 윈7, 윈8.1, 윈10에서 정상동작하는 것을 확인했습니다.


샘플이므로,

해당 볼륨을 찾아서 그냥 Dir 한번 시켜주는 예제입니다.

테스트할때는 그냥 대충 C드라이브 것을 넣고 해도 됩니다.

실제 쓸때는 당연히 진짜 필요한 대상의 볼륨ID를 넣으셔야겠죠.



사실 다른건 복잡하니까

(사실 저도 뭘 어떻게 하는 짓(?)인지 까먹은 것도 있고),

다른 건 신경끄시고,


SET "VOLID=ABCD-1234"   <- 여기서 볼륨명 잘 맞춰넣고,

...

dir %dstDrive%              <- 여기서 원하는 명령으로 바꿔서 쓰기만 하면 됩니다.

(%dstDrive% 리턴값이 C: 이런식입니다.)


다른건 거의 손댈거 없음.


단, "똑같은 일련번호가 존재하면 오동작합니다."

우연으로 일치할 확률은 42억분의 1이지만, subst 같은 것으로 마운트 했을경우, 원본볼륨 따라서 똑같은 게 2개가 되더군요.

그런거에 걸리지 않게끔 유의하셔야합니다.



필요한분들께 도움 되길바랍니다.

참고로 저도 대강 쓰다가 새로 만든거라

조금 버그가 있을수 있고, 불필요한 부분이 있을수도 있으니,

그런 부분은 직접 고쳐쓰시면 됩니다. ^^



--------------------------------------------------------------------------------------------------------

P.S.

윈7 이상 전용 예제도 추가했습니다.

원 예제는 XP 여부 구분하는 구문이 길어져서 복잡해 보이는데,

XP를 포기(?)하니 간결하군요. ㅋ


번호 제목 글쓴이 조회 추천 등록일
[공지] 강좌 작성간 참고해주세요 gooddew - - -
4320 소프트웨어| 엑셀 제목표시줄에 파일 전체 경로 표시 [28] 지후빠 2678 29 04-02
4319 소프트웨어| 단순한 팝업 메뉴형 런처 PopSel (실컴,PE) [18] 지후빠 2449 26 03-30
4318 기 타| IPv6 전용 네트워크에서 윈도우 포럼 접속하기 네트워크빌 2004 2 03-27
4317 소프트웨어| 구글 캘린더로 매년 X월의 Y번째 요일에 반복 설정하기 asklee 936 2 03-26
4316 소프트웨어| [펌]VirtualBox 로컬 드라이브 연결하기 [2] 타천사둘리 1299 9 03-23
4315 윈 도 우| PC 나 노트북 종료시 전원차단 안 될 때 조치방법 [6] 타천사둘리 2868 6 03-21
4314 윈 도 우| Wifi 패스워드 (종료!!!) [27] kernel 6066 19 03-12
4313 소프트웨어| 배치파일로 2GB 이상 계산과 batch hybrid [7] 지후빠 1399 13 03-05
4312 소프트웨어| 팁: VirtualBox 7의 Windows 10/11에서 NVMe 드라이버 활성... [3] VᴇɴᴜꜱGɪ 1188 9 03-05
4311 윈 도 우| 구글 검색 결과를 가장한 리다이렉션 광고 링크 제거하기 (... [11] 오호라7 4073 25 02-26
4310 하드웨어| USB 3.0 과 2.4GHz 간섭 문제 해결 - 동글을 연장선연결 [8] 메리아 3003 12 02-25
4309 윈 도 우| 윈도우 업데이트 다운로드 및 설치 오류 조치 [6] 미스라 3619 5 02-17
4308 소프트웨어| (ver 0.2.3, url 파일기능) 크롬/엣지에서 URL 드래그 드롭... [7] 메리아 2909 10 02-16
4307 모 바 일| 뉴진스 음악에서 보컬만 추출하기? 이거 하나면 끝!!! | mp... toz21 1888 0 02-14
4306 윈 도 우| IE 강제 실행 스크립트 + 탭 여러개 열기 [6] 녹색조각 2641 14 02-14
4305 기 타| 파이어 폭스 무설치 만들기 [17] 슈머슈마 1560 9 02-12
4304 윈 도 우| 향상된 윈도우 자동 로그인 On/Off 스크립트 [6] zerojiddu 2732 13 02-11
4303 소프트웨어| 현존 최강 무료 동영상 편집기 소개 및 활용법 안내 | 이게... [13] toz21 2673 7 02-11
4302 소프트웨어| Pecmd.ini 위치를 Windows폴더로 이동 [6] 카멜 751 10 02-10
4301 소프트웨어| (ver 0.2) 크롬/엣지에서 URL 드래그 드롭으로 제목 얻기 [11] 메리아 1042 12 02-08
XE1.11.6 Layout1.4.8