 
- 帖子
- 1013
- 积分
- 1228
- 技术
- 14
- 捐助
- 0
- 注册时间
- 2019-2-20
|
回复 39# idwma
第三行,的备份分区表代码, 要操作的硬盘号,还不知道, 因为在PE下也有可能是硬盘1或2,
如果用方法一的代码, 我认为应该将备份分区表代码放下面的位置
方法一代码:
@echo off&setlocal enabledelayedexpansion
chcp 437
for /f "delims=" %%i in ('^(echo list disk ^)^|diskpart^|find "Online"') do set/a n+=1
set/a n=!n!-1
for /l %%i in (0,1,!n!) do ((echo select disk %%i &echo detail disk)|diskpart|findstr /i "volume.*no" &&set f=%%i)
if not defined f start mshta vbscript:msgbox("not find no",0,"tip")(window.close)&&exit
for /l %%i in (0,1,!n!) do (
for /f "tokens=2,3 delims= " %%a in ('^(echo select disk %%i ^&echo detail disk^)^|diskpart^|findstr /i "volume.*no"') do (
if exist %%b:\windows\system32 (
BOOTICE /DEVICE=硬盘号 /mbr /backup /sectors=1 /quiet /file=MBR_Bak
(echo select disk %%i
echo select volume %%a
echo delete volume)|diskpart
for /f "tokens=2 delims= " %%c in ('^(echo select disk %%i ^&echo list part^)^|diskpart^|findstr /i "system Reserved Recovery"') do (
if not "%%c"=="" (
(echo sel disk %%i
echo sel part %%c
echo del part override)|diskpart)
)
)
)
)
pause |
|