배치파일 ?
2020.12.27 06:04
VTOYEFI 파티션의 문자 제거 탑재 CMD
@echo off
for /f "tokens=1-4" %%a in ('"WMIC Volume get DeviceID,Driveletter,FileSystem,Label | find /i "VTOYEFI""') do (
set DID=%%a
set Dletter=%%b
set Label=%%c )
if %Label% == FAT (mountvol %Dletter% /d
echo VTOYEFI 파티션의 %Dletter% 문자가 제거 되었습니다.
pause >nul
exit )
for %%f in (D E F G H I J K L M N O P Q R S T U V W Y Z) do (
for /f "delims=- tokens=2" %%g in ('fsutil fsinfo drivetype %%f:') do if " 루트 디렉터리 없음" == "%%g" (
set text=%%f
goto aaa ))
echo 빈 문자가 없습니다.
pause >nul
exit
:aaa
mountvol %text%: %DID%
echo VTOYEFI 파티션에 %text% 문자가 탑재 되었습니다.
pause >nul
exit
VTOYEFI 파티션이 한개일때에만 사용 하세요.
UTF-8 => ANSI
댓글 [9]
-
집앞의_큰나무 2020.12.27 07:51
-
arim 2020.12.27 10:13
for /f "skip=1 tokens=1-3,* delims= " %%a in ('wmic logicaldisk get name^,volumename') do (
echo. %%a %%b %%c
goto aaa )
exit
:aaa
pause >nul
결과
C: Win10
이러면 되나요.
-
집앞의_큰나무 2020.12.27 10:36
앗~!!!
똑 떨어질 정도로 맞습니다.
C: 볼륨명 출력이 필요 했습니다.
세상은 넓고....
감사 합니다.
-
arim 2020.12.27 11:34
for /f "tokens=2 delims= " %%a in ('wmic logicaldisk get Name^,VolumeName ^| find "C:"') do echo %%a
결과
Win10
감사합니다.
-
집앞의_큰나무 2020.12.27 12:21
이 구문도 감사 합니다.
단 띄어쓴 공백이후는 안보여서 위에 올려주신것이 제겐 맞네요
환경변수도 하나 적용해주신다면 더더욱 좋겠습니다.(예 set label=%%b %%c)
-
arim 2020.12.27 12:59
ffor /f "tokens=3,* delims= " %%a in ('vol C: ^| find "C"') do set label=%%b
echo %label%
감사합니다.
for /f "tokens=1,* delims= " %%a in ('wmic logicaldisk get Name^,VolumeName ^| find "C:"') do set label=%%b
delims=xxx - 구분 문자 집합을 지정합니다. 이것은 공백 또는 탭에 대한 기본 구분 문자 집합을 바꿉니다.
공백 또는 탭에 대한 기본 구분 문자 => "delims= " 도움말 활용 입니다.
for /f "tokens=1,*" %%a in ('wmic logicaldisk get Name^,VolumeName ^| find "C:"') do set label=%%b
for /f "tokens=3,*" %%a in ('vol C: ^| find " C "') do set label=%%b
-
집앞의_큰나무 2020.12.27 14:04
암튼 바로바로 응답해주시고 수고 많이 하셨습니다.
오는 새해에도 건강 하세요
-
컨피그 2020.12.27 15:46
위 댓글에 보니까 tokens=1-3,* 로 만들어서 %a %b %c 3개를 뿌려주시던데
for /F "skip=1 tokens=1*" %a in ('wmic logicaldisk get name^, volumename') do @echo. %a %b
이게 더 깔끔하지 않을까요?
드라이브명에는 공백이 없겠고, 볼륨명에 공백이 있을경우 잘려나가서 %c 로 들어가는것보다 %b 하나에 뭉퉁그려서 출력이요
-
집앞의_큰나무 2020.12.27 17:54
아 .
우선 하고자 하는것은 잘해결이 되었습니다.
다음을 위해서 잘 챙겨갈께요 또 감사 합니다.
찾던것과 비슷해서
되게 반가운 스크립트네요
고맙습니다.
아래의것에서 시스템 볼륨명(C 드라이브 이름)만 끌어내오는것도 방법이 있을까요?
setlocal EnableExtensions EnableDelayedExpansion
for /f "tokens=* delims=" %%a in ('wmic logicaldisk get name^,volumename') do (
set "line=%%a"
for /f "tokens=1-3,* delims= " %%f in ("!Line!") do (
echo. %%f %%g %%h
)
)