Board logo

标题: [求助]检测所有盘下指定目录的存在 [打印本页]

作者: afeng999     时间: 2009-6-26 01:42    标题: [求助]检测所有盘下指定目录的存在
有目录 A 和 目录 B 固定路径 根目录\123\ 下 想检测 所有盘下的 目录A 和目录B for %%a in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do @( if exist %%a:\123\A (echo 已存在!~~ & pause >nul & goto 2) else goto 3) for %%a in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do @( if exist %%a:\123\B (echo 已存在!~~ & pause >nul & goto 2) else goto 3) 不知哪里错了..麻烦会的更正下,,,谢谢!!!

作者: afeng999     时间: 2009-6-26 01:44
这两段代码 应该能写在一起..不过我不会太复杂的架构!! 麻烦高手们指点下

作者: wxcute     时间: 2009-6-26 01:57
@echo off
for %%a in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do (
 if exist %%a:\123\A\ (echo %%a 盘已存在目录 A!) else echo %%a 盘不存在相应目录!
 if exist %%a:\123\B\ (echo %%a 盘已存在目录 B!) else echo %%a 盘不存在相应目录!
)
pause

作者: afeng999     时间: 2009-6-26 02:40
Originally posted by wxcute at 2009-6-26 01:57: [code]@echo off for %%a in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do (  if exist %%a:\123\A\ (echo %%a 盘已存在目录 A!) else echo %%a 盘不存在相应目录!  if exist %%a ...
如果存在 goto 3 不存在 goto 2 应该怎么写??? 再加多个else 就不行了

作者: Hanyeguxing     时间: 2009-6-26 02:52
1,在for的内部一般不要用goto,否则循环将被终止 2,如果不需要echo,可以用别的命令替换他 3,标签最好不要只用数字
@echo off
for %%a in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do (
 if exist %%a:\123\A\ (echo %%a 盘已存在目录A &call :han2) else echo %%a 盘不存在目录A &call :han3
 if exist %%a:\123\B\ (echo %%a 盘已存在目录B &call :han2) else echo %%a 盘不存在目录B &call :han3
)
pause
goto :eof
:han2
echo 要执行的操作2
goto :eof
:han3
echo 要执行的操作3
goto :eof
如果不想echo显示结果,可以
@echo off
for %%a in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do (
 if exist %%a:\123\A\ (call :han2) else call :han3
 if exist %%a:\123\B\ (call :han2) else call :han3
)
pause
goto :eof
:han2
echo 要执行的操作2
goto :eof
:han3
echo 要执行的操作3
goto :eof
[ Last edited by Hanyeguxing on 2009-6-26 at 02:59 ]

作者: afeng999     时间: 2009-6-26 03:16
问题解决了.. 谢谢...!帮助...学习ing!!