강좌 / 팁

배치 파일 for문에서 diskpart 실행

2024.09.01 11:50

sunshine 조회:838 추천:18

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

출처: http://bbs.c3.wuyou.net/forum.php?mod=viewthread&tid=423983

구글 번역:

1. diskpart는 파이프라인을 통해 cmd 명령으로 전달된 diskpart 명령을 받을 수 있지만 명령이 여러 개인 경우 제대로 작동하지 않습니다.

 

2. 일반적으로 여러 diskpart 명령 세트의 경우 /s 매개변수를 통해 스크립트를 호출하거나 다음과 같은 파이프라인을 통해 스크립트를 완료합니다.

 

/s의 장점은 일부 diskpart 명령에 오류를 무시할 수 있는 noerr 매개 변수가 있다는 것입니다. 하지만 단점은 스크립트 파일을 미리 생성한 후 호출해야 한다는 점입니다.

 

오늘 저는 for를 사용하여 일련의 지침을 diskpart에 성공적으로 전달하려고 했습니다. 또한 diskpart에 전달한 다음 실행 결과를 분석 및 처리를 위해 중첩할 정보 흐름으로 사용할 수도 있습니다. 그러나 중첩된 for에는 특정 문자를 표시하려면 작은따옴표와 ^가 필요합니다.

===========================================================

msn019.gif  DiskPart명령FOR에서실행.cmd

1. 하나의 for 문에서 diskpart 명령 1개는 잘 되지만 같이 2개 이상 실행하면 에러가 납니다.

그러나 위의 스크립트를 이용하면 여러개를 함께 실행할 수가 있습니다.

- 배치 파일을 관리자 권한으로 실행하면 됩니다.

 

2. 메세지를 삭제하고 라인 수를 아래처럼 줄여도 되는군요.

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

@echo off

setlocal ENABLEDELAYEDEXPANSION

set n=0

for /f "delims=" %%c in ('^(for %%r in ^("list disk" "list vol" "sele disk 0" "list disk" "detail disk"

                                  ^) do @^(echo %%~r^)^)^|diskpart

') do (if "%%c"=="DISKPART> " (set /a n+=1&echo.) else (if !n! geq 1 echo %%c))

set /a n-=1

pause

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

 

3. 메세지를 삭제하고 하나의 for문에서 실행하기

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

@echo off

setlocal ENABLEDELAYEDEXPANSION

set n=0

set "diskpart_cmd=echo list disk ^& echo list vol ^& echo sele disk 0 ^& echo list disk ^& echo detail disk"

for /f "delims=" %%c in ('^(!diskpart_cmd!^)^|diskpart

') do (if "%%c"=="DISKPART> " (set /a n+=1&echo.) else (if !n! geq 1 echo %%c))

set /a n-=1

pause

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

 

번호 제목 글쓴이 조회 추천 등록일
[공지] 강좌 작성간 참고해주세요 gooddew - - -
4496 배치 파일 색상 팔레트 [11] 지후빠 1102 30 09-01
» 배치 파일 for문에서 diskpart 실행 [6] sunshine 838 18 09-01
4494 배치파일 작은 팁 2가지 [15] sunshine 1738 34 08-26
4493 Powershell 스크립트 작성 할때 많이 사용하는 명령어 [2] Nic네임 651 11 08-25
4492 빠르게 Powershell 배우는 방법 [7] Nic네임 2346 25 08-07
4491 Powershell Script 관리자 권한으로 실행하는 방법 [1] Nic네임 815 10 08-07
4490 경로 복사 컨텍스트 메뉴[수정8] [12] sunshine 1654 29 08-02
4489 가볍고 편리한 런처 LaunchOnFly 소개합니다 [6] 지금은공부 1698 21 08-01
4488 미니PC 드라이버 백업복원 4편 [최종+++] [17] sunshine 2310 50 07-26
4487 배치파일 관리자 권한으로 실행 [10] 지후빠 2090 24 07-23
4486 미니PC 드라이버 백업복원 3편 [수정4++] [14] sunshine 1441 41 07-21
4485 소프트웨어| 자동 업데이트 2in1 배치파일[추가4] [24] sunshine 3003 48 07-15
4484 소프트웨어| Windows 종료 시 시간 지연(윈도우 종료 지연) [2] Vincenzo 2385 2 07-07
4483 윈 도 우| 마우스 우측 단추 메뉴 모두 나오게 [11] 하늘은높고 2874 15 07-04
4482 소프트웨어| 미니PC 드라이버 백업복원 2편 [13] sunshine 1537 35 07-04
4481 윈 도 우| install.wim APP 통합 하기 [6] 꼬져 2126 18 07-01
4480 윈 도 우| install.wim 파워쉘 모듈 설치 및 KB5034441 업데이트 숨기기 [4] 꼬져 777 15 07-01
4479 소프트웨어| 아래한글(HWP)에서 폰트(TTF & OTF) 사용 팁 [8] 승승아빠 1646 29 06-30
4478 기 타| 유튜브에서 영상 섬네일 갯수 늘리기-안되는 분만-6/28수정 [6] 오호라7 883 6 06-28
4477 윈 도 우| 팁: Windows 11 2024 업데이트 (버전 24H2) 일반적인 문제 ... VᴇɴᴜꜱGɪ 2960 1 06-22
XE1.11.6 Layout1.4.8