|
原帖由 pppguest3962 于 2013-3-31 23:24 发表 ![](http://bbs.wuyou.net/images/common/back.gif)
CDROM驱动被DOS加载起来就没问题的,但现在的问题是:
如果在硬盘D盘上(ghost应该叙述为1:2磁盘吧)的\gho文件夹内有一个(未知文件名).gho,想把它恢复到C盘,应该怎么解决这个问题?
D盘是NTFS格式,纯DOS里有什么办法启动起对这个磁盘的读区?(然后去for出文件名)
或者有没有其它什么思路? 反正这个启动引导操作能做成一个img文件里,被GRUB4DOS调用起来自动做恢复就可以了,
这样做的目的是:
有多个不同版本的镜像,按时间生成的,序号每次,每个环境产生都文件名都不同,我不想每次都去改autoexec.bat里的文件名,但有不想每次进ghost去逐层菜单手动旋转文件操作。。。,于是想这样实现。。。
硬盘全是NTFS格式,应该是楼主所说的1:2或1.2格式,如果是综合分区就不一定了,所以楼主要做成这样一个IMG文件还是要花一定的功夫的……
偶这里贴上一个偶自己在网上学习拼凑起来的东东,用着还行,就是有点慢(纯DOS下也别想快到哪儿去),楼主觉得有用可以自己修成专用的,现丑了……
BAT文件如下:
rem 查找并恢复其他备份
@echo off
CLS
set actp=
if exist mini_dd.txt del mini_dd.txt
minito /nohp /p /ifs>mini_dd.txt
strings lines=LINESIZE mini_dd.txt
set line=1
call w.bat box @SDHF.BAT:srdm_1
if errorlevel 100 goto exit
if %wjm%#==# set wjm=gho
:mini
strings line=add %line%,1
strings lined=read mini_dd.txt,%line%
if %lined%#==# goto mini_1
strings row0=mid %lined%,4,1
if %row0%#==# goto mini_2
strings row1=left %lined%,4
goto mini_3
:mini_2
strings row1=left %lined%,3
strings row7=mid %lined%,8,2
:mini_3
strings row3=mid %lined%,8,2
strings row5=mid %lined%,19,3
if not %actp%#==# goto mini_4
if not %row5%#==YES# goto mini_4
set actp=%row1%
set actd=%row7%
:mini_4
set lastp=%row1%
set lastd=%row3%
cls
echo 正在%row3%盘查找备份文件(*.%wjm%,请耐心等待,不要关闭和重启电脑)……
for %%i in (%row3%) do dir /b /s %%i\*.%wjm%>>temp.txt
find /i ".%wjm%" temp.txt>nul
goto mini
:mini_1
cls
call W.BAT list @temp.txt
wbat box "你的选择是:^ %wbat% " 确定
echo %wbat%>test.txt
strings pf=read test.txt,1
strings pf=left %pf%,2
strings lj=read test.txt,1
strings lj=mid %lj%,3,20
if not %actd%#==C:# goto mini_5_1
if %pf%#==D:# set la=1.2
if %pf%#==E:# set la=1.3
if %pf%#==F:# set la=1.4
if %pf%#==G:# set la=1.5
if %pf%#==H:# set la=1.6
if %pf%#==I:# set la=1.7
if %wbat%#==# goto mini_6
set drv=%la%.%lj%
goto mini_5
:mini_5_1
if %pf%#==D:# set la=1.1
if %pf%#==E:# set la=1.2
if %pf%#==F:# set la=1.3
if %pf%#==G:# set la=1.4
if %pf%#==H:# set la=1.5
if %pf%#==I:# set la=1.6
if %pf%#==J:# set la=1.7
if %wbat%#==# goto mini_6
set drv=%la%.%lj%
goto mini_5
:mini_5
if exist mini_dd.txt del mini_dd.txt
if exist test.txt del test.txt
if exist temp.txt del temp.txt
xmsman -c >NUL
Ghost -clone,mode=pload,src=%drv%:1,dst=%actp% -sure -fx
if %wrb%#==1# r.bat
if %wrb%#==2# s.bat
goto exit
:srdm_1 "欢迎使用自动备份/恢复软件" [x]
┌─────────────────┐
│ 请输入恢复文件后缀名、如:gho │
├─────────────────┤
│如果你有自定义的文件后缀名,请输入│
├───────┬─────────┤
│ 文件后缀名:│*.[$ wjm,20 ]│
├───────┴─────────┤
│ │
├─────────────────┤
│ │
└─────────────────┘
制作:江河 QQ:96470
2012年02月
:
:mini_6
cis
echo 没有找到 *.%wjm% 文件,请按“M”回到主菜单,重新查找……
:exit
[ 本帖最后由 jh1688 于 2013-4-5 11:37 编辑 ] |
|