本帖最后由 ZJHJ 于 2014-7-28 09:35 编辑
- @Echo Off
- color 1a
- :ab
- @title 计算机系统维护 编辑:王 伟 QQ:251485609 20130525
- ::cls
- @echo.
- @Echo § 随心所欲预设置 [ 备份、还原 ] §
- @echo ═══════════════════
- @echo.
- @Echo 预设置备份\还原.任意分区备份,文件随心存放(根目录).智能判断还原文件与目
- @echo.
- @Echo 标对应(含GHO装机).设置保存后,选择启动项即按预定执行,若要改变请重新设置!
- @echo ___ ___ ___ ___
- @echo.
- for /f "tokens=*" %%i in ('findstr /r /c:"okldr" c:\boot.ini') do set xs=%%i
- @echo ☆◆已经设置了 "%xs:~9%" 是否要重新设置?◆
- @echo.
- @echo ———————————————————————————————————
- @Echo ‖ 备份 (请按 1) 还原 (请按 2) 退出 (请按 3) 清除 (请按 4) ‖
- @echo ———————————————————————————————————
- @echo.
- @set /p xz= 请输入(默认退出):
- if "%xz%"=="" goto eof
- if "%xz%"=="1" goto AAbf
- if "%xz%"=="2" goto BBB
- if "%xz%"=="3" goto eof
- if "%xz%"=="4" goto qcxz
- goto ab
- :AAbf
- setlocal EnableDelayedExpansion
- ::搜索实际盘符
- cd.>yxpf.txt
- cd.>pf.txt
- for %%f in ( C D E F G H I J) do if exist %%f:\ @echo %%f>>pf.txt
- for /f "tokens=*" %%i in (pf.txt) do set /p "mn=%%i "<nul>>yxpf.txt
- for /f "delims=" %%i in (yxpf.txt) do set tf=%%i
- del pf.txt
- del yxpf.txt
- @echo.
- @echo 你的计算机实际如下分区及盘符 ( %tf%)
- @echo.
- @set /p x5z= 你想备份哪个盘(默认c盘):
- if "%x5z%"=="" set Q=1
- if "%x5z%"=="c" set Q=1
- if "%x5z%"=="d" set Q=2
- if "%x5z%"=="e" set Q=3
- if "%x5z%"=="f" set Q=4
- if "%x5z%"=="g" set Q=5
- if "%x5z%"=="h" set Q=6
- if "%x5z%"=="i" set Q=7
- if "%x5z%"=="j" set Q=8
- if "%x5z%"=="C" set Q=1
- if "%x5z%"=="D" set Q=2
- if "%x5z%"=="E" set Q=3
- if "%x5z%"=="F" set Q=4
- if "%x5z%"=="G" set Q=5
- if "%x5z%"=="H" set Q=6
- if "%x5z%"=="I" set Q=7
- if "%x5z%"=="J" set Q=8
- ::检查剩余空间
- cd.>cp.txt
- for %%i in ( C D E F G H I J) do (
- if exist %%i: for /f "tokens=3" %%j in ('dir /-c %%i: ^|find "可用字节"') do (
- set space=%%j
- set space=!space:~0,-3!
- set /a space=!space!/1024/1024
- echo %%i:剩余!space!GB>>cp.txt
- ))
- cd.>pf.txt
- for /f "tokens=*" %%i in (cp.txt) do set /p "mn=%%i "<nul>>pf.txt
- for /f "delims=" %%i in (pf.txt) do set pf=%%i
- del cp.txt
- del pf.txt
- @echo.
- @Echo 将备份文件存放在哪个盘? 哈哈不要放在C盘哦!
- @echo.
- @echo 已经选择备份(%Q%)分区 实际分区及盘符 ( %tf%)
- @echo.
- @Echo 剩余空间:( %pf%)
- @echo ————————————————————————————————
- @set /p xzf= 请输入存放位置(默认e):
- if "%xzf%"=="" set f=3&goto cfd
- if "%xzf%"=="d" set f=2&goto cfd
- if "%xzf%"=="e" set f=3&goto cfd
- if "%xzf%"=="f" set f=4&goto cfd
- if "%xzf%"=="g" set f=5&goto cfd
- if "%xzf%"=="h" set f=6&goto cfd
- if "%xzf%"=="i" set f=7&goto cfd
- if "%xzf%"=="j" set f=8&goto cfd
- if "%xzf%"=="D" set f=2&goto cfd
- if "%xzf%"=="E" set f=3&goto cfd
- if "%xzf%"=="F" set f=4&goto cfd
- if "%xzf%"=="G" set f=5&goto cfd
- if "%xzf%"=="H" set f=6&goto cfd
- if "%xzf%"=="I" set f=7&goto cfd
- if "%xzf%"=="J" set f=8&goto cfd
- goto AAbf
- ::设置执行程序
- :cfd
- if "%f%"=="%Q%" goto fcw
- if exist C:\boot.ini.bak del C:\boot.ini.bak
- if not exist c:\okldr Copy okldr c:\
- if not exist c:\YlmF.ima Copy YlmF.ima c:\
- attrib +s +h +r c:\okldr
- attrib +s +h +r c:\YlmF.ima
- attrib -s -h -r c:\boot.ini
- Copy c:\boot.ini c:\boot.ini.bak
- del c:\boot.ini
- findstr /v "okldr" C:\boot.ini.bak>C:\boot.ini
- attrib -s -h -r c:\boot.in_ 2>nul
- if exist c:\boot.in_ del c:\boot.in_ 1>nul 2>nul
- Copy c:\boot.ini c:\boot.in_
- @Echo c:\okldr=备份%Q%分区,文件%Q%wang.GHO将存放%f%分区>>c:\boot.ini
- BOOTCFG /Timeout 6
- attrib +s +h +r c:\boot.ini
- attrib +s +h +r c:\boot.in_
- attrib -s -h -r c:\Ghost.ba_ 1>nul 2>nul
- cd.>c:\Ghost.ba_
- @Echo Ghost.exe -nousb -clone,mode=pdump,src="1:%Q%",dst="1:%f%\%Q%wang.GHO" -fro -crcignore -sure -rb -z1 -afile="GHOSTERR.TXT">>c:\Ghost.ba_
- @Echo restart>>c:\Ghost.ba_
- attrib +s +h +r c:\Ghost.ba_
- @echo.
- @Echo 已经设置妥当,备份文件%Q%wang.GHO将放在%f%分区,备份系统时,请从启动菜单选择。
- @echo.
- @Echo 友情提示: 备份设置已经保存,如果要改变操作或者设置还原,请重新设置!!
- @echo.
- pause
- goto eof
- ::寻找备份的**.GHO文件
- :BBB
- :cl
- @Echo 你已经存在如下GHO文件,请选择并 "复制路径及文件名" 进行还原:>tem.txt
- @echo.
- @Echo 正在查找**.GHO文件,请稍候......
- @echo.
- for %%f in ( D E F G H I J) do (
- dir /a /b /s %%f:\*.GHO>>tem.txt
- )2>nul
- call tem.txt
- del tem.txt
- @set /p u= 请将复制粘贴在这里(默认自动完成):
- :qy
- set y1=%u:~0,1%
- if "%y1%"=="D" set f=2
- if "%y1%"=="E" set f=3
- if "%y1%"=="F" set f=4
- if "%y1%"=="G" set f=5
- if "%y1%"=="H" set f=6
- if "%y1%"=="I" set f=7
- if "%y1%"=="J" set f=8
- set y2=%u:~3%
- set k=%u:~3,1%
- echo %k% | findstr /R /C:"[^0-9 ]" > nul
- if %errorlevel%==1 (
- if "%k%"=="1" set v=1
- if "%k%"=="2" set v=2
- if "%k%"=="3" set v=3
- if "%k%"=="4" set v=4
- if "%k%"=="5" set v=5
- if "%k%"=="6" set v=6
- if "%k%"=="7" set v=7
- ) else (set v=1)
- if "%f%"=="%v%" goto fcw
- if "%u%"=="" goto ccl
- attrib -s -h -r c:\Ghost.ba_ 1>nul 2>nul
- cd.>c:\Ghost.ba_
- @Echo Ghost.exe -nousb -clone,mode=pload,src="1:%f%\%y2%:1",dst="1:%v%" -fro -crcignore -sure -rb -afile="GHOSTERR.TXT">>c:\Ghost.ba_
- @Echo restart>>c:\Ghost.ba_
- if not exist c:\okldr Copy okldr c:\
- if not exist c:\YlmF.ima Copy YlmF.ima c:\
- attrib +s +h +r c:\okldr
- attrib +s +h +r c:\YlmF.ima
- attrib +s +h +r c:\Ghost.ba_
- attrib -s -h -r c:\boot.ini
- attrib -s -h -r c:\boot.in_ 1>nul 2>nul
- if exist C:\boot.ini.bak del C:\boot.ini.bak
- Copy c:\boot.ini C:\boot.ini.bak
- del c:\boot.ini
- findstr /v "okldr" C:\boot.ini.bak>C:\boot.ini
- if exist c:\boot.in_ del c:\boot.in_ 1>nul 2>nul
- Copy c:\boot.ini c:\boot.in_
- @Echo c:\okldr=还原%v%分区,将用%u%文件执行>>c:\boot.ini
- BOOTCFG /Timeout 6
- attrib +s +h +r c:\boot.ini
- attrib +s +h +r c:\boot.in_
- @echo.
- @Echo 已经设置还原文件是%u%,还原到%v%分区,请从启动菜单选择。
- @echo.
- @Echo 友情提示: 还原设置已经保存,如果下次要改变操作或备份,请重新设置。
- @echo.
- pause
- goto eof
- :qcxz
- attrib -s -h -r c:\boot.ini
- del c:\boot.ini
- attrib -s -h -r c:\boot.in_ 1>nul 2>nul
- Copy c:\boot.in_ C:\boot.ini
- attrib +s +h +r c:\boot.ini
- del c:\boot.in_
- attrib -s -h -r c:\okldr
- attrib -s -h -r c:\YlmF.ima
- del c:\okldr
- del c:\YlmF.ima
- attrib -s -h -r c:\Ghost.ba_
- del c:\Ghost.ba_
- @Echo 卸载完成。
- pause
- goto eof
-
- :ccl
- for %%f in ( D E F G H I J) do (
- if exist %%f:\1wang.GHO set u=%%f:\1wang.GHO &goto qy
- )
- goto cl
- :fcw
- @echo.
- @Echo 警告!设置错误,源与目标不能同在分区,请重新操作。
- @echo.
- pause
- goto ab
- :eof
复制代码 下载:http://pan.baidu.com/share/link? ... 536&uk=87332033
下载:http://pan.baidu.com/s/1c0cnlBU |