|
本帖最后由 dos时代菜鸟 于 2021-6-11 09:12 编辑
我下面代码!!!!!是可以。。。。
- @echo off
- setlocal ENABLEDELAYEDEXPANSION
- set find1=0
- for %%c in (C D E F G H I J K L M N O P Q R S T U V W ) DO (
- IF EXIST %%c:\windows\explorer.exe call :found1 %%c
- )
- if !find1! equ 0 echo 未找到 windows 分区
- pause
- goto :eof
- :found1
- set find1=1
- echo 找到 windows 分区 %1:
- exit /b
复制代码
下面是按照你的思路,写的。
- @echo off
- setlocal ENABLEDELAYEDEXPANSION
- set gho_file=systembak.gho
- set find1=0
- set find2=0
- for %%c in (C D E F G H I J K L M N O P Q R S T U V W ) DO (
- IF EXIST %%c:\windows\explorer.exe call :found1 %%c
- if exist %%c:\!gho_file! call :found2 %%c
- )
- if !find1! equ 0 (
- echo 未找到 windows 分区
- call :error1
- )
- if !find2! equ 0 (
- echo 未找到 GHO 文件
- call :error1
- )
- ECHO.
- ECHO 接下来把!find2!:\systembak.gho恢复到!find1!:
- ghost64.exe -clone,mode=pload,src=!find2!:\systembak.gho:1,dst=!find1!: -sure
- ECHO 恢复系统已完成,准备关机
- wpeutil shutdown
- GOTO :EOF
- :found1
- set find1=%1
- echo 找到 windows 分区 %1:
- exit /b
- :found2
- set find2=%1
- echo 找到 GHO 文件 %1:\!gho_file!
- exit /b
- :error1
- color 48
- echo 按任意键关机
- pause>nul
- wpeutil shutdown
- exit /b
复制代码
但是问题是 ,你这个思路,如果 目标电脑 根本没有 windows ,甚至连分区都没有,是个新硬盘呢?
还是 考虑 再通过交互模式手动 选择分区?
如果硬盘上 有多个 windows 或者多个 systembak.gho 又改咋整?是否也要 考虑 交互式 选择?
|
|