标题: [求助]检测所有盘下指定目录的存在 
[打印本页]
作者: 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:
@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!!