最后的答案是IFS与GHOST的冲突,跟代码无关。
在4DOS 下
下面的代码哪里使得得不到想要的结果呢?
set rnd=%@random
for %%b in (w v u t s r q p o n m l k j i h g f e d c) do if exist %%b:\backup.gho ren %%b:\backup.gho back%rnd%.gho
ghost -clone,mode=pdump,src=1:1,dst=1:2:\backup.gho -sure -cns -z2 -fx -nousb
if errorlevel 1 goto exit
goto yidong
:yidong
cls
for %%t in (w v u t s r q p o n m l k j i h g f e d c) do if exist %%t:\backup.gho (
md /s %%t:\backup
move %%t:\backup.gho %%t:\backup\backup.gho
)
:exit
想要的结果是:把新建的backup.gho移动到新建的目录下。
我经检查发现应该是上面的代码出错,我做过下面的测试:
在某盘上新建一个backup.gho,该盘没有backup这个文件夹、和有该文件夹都试了,把 goto yidong放到set rnd=%@random,也就跳过那个改名和新建gho,发现移动的那段代码是可行的,但是一旦使用了上面的代码后就是可以新建文件夹,但是文件却没有移动到该新建文件夹里面去。
[ Last edited by austion on 2008-11-27 at 20:40 ]
在4DOS 下
下面的代码哪里使得得不到想要的结果呢?
set rnd=%@random
for %%b in (w v u t s r q p o n m l k j i h g f e d c) do if exist %%b:\backup.gho ren %%b:\backup.gho back%rnd%.gho
ghost -clone,mode=pdump,src=1:1,dst=1:2:\backup.gho -sure -cns -z2 -fx -nousb
if errorlevel 1 goto exit
goto yidong
:yidong
cls
for %%t in (w v u t s r q p o n m l k j i h g f e d c) do if exist %%t:\backup.gho (
md /s %%t:\backup
move %%t:\backup.gho %%t:\backup\backup.gho
)
:exit
想要的结果是:把新建的backup.gho移动到新建的目录下。
我经检查发现应该是上面的代码出错,我做过下面的测试:
在某盘上新建一个backup.gho,该盘没有backup这个文件夹、和有该文件夹都试了,把 goto yidong放到set rnd=%@random,也就跳过那个改名和新建gho,发现移动的那段代码是可行的,但是一旦使用了上面的代码后就是可以新建文件夹,但是文件却没有移动到该新建文件夹里面去。
[ Last edited by austion on 2008-11-27 at 20:40 ]

