返回列表 发帖

[ 新手练习题 3 ] 批处理判断目录存在与否

[ 新手练习题 3 ] 判断目录存在与否
判断 C:\ 盘是否存在 WINDOWS 目录。如果存在,则用资源管理器打开目录。
不存在则创建此目录并打开。

目的:掌握判断目录存在与否的方法,学会调用程序打开目录。

要求:方法不限。

评分:代码可读性 1 分;
   首个新方法 4 分,第二个 3 分,依次类推,最少 2 分;
   一人可多种方法,新方法追加 2 分,已经出现过的方法追加 1 分。
批处理之家论坛官方 QQ 群 :【当前人数/人数上限】【2009-07-08】
群①:43011867(181/200);群②:(暂缺数据);群③:66165582(120/200)。

Dir C:\ /a:d /b 2>nul|Findstr /i "^Windows$">nul||md C:\Windows&Explorer C:\WindowsCOPY
或者
(If Not Exist C:\Windows\nul md C:\Windows)&Explorer C:\WindowsCOPY
最直接的
md C:\Windows 2>nul&Explorer C:\WindowsCOPY


[ 本帖最后由 yslyxqysl 于 2009-5-30 21:27 编辑 ]

TOP

@echo off
cd /d c:\windows
if %errorlevel% equ 1 (md c:\windows)
explorer c:\windowsCOPY
这样应该可以了吧
1

评分人数

    • wxcute: 首个答对的给满分。很好。PB + 5

TOP

@echo off
if exist c:\windows (
explorer c:\windows
) else (
md c:\windows)
pause >nul COPY

[ 本帖最后由 flyzr 于 2009-6-5 13:27 编辑 ]
1

评分人数

    • wxcute: 很好,值得鼓励。PB + 4

TOP

@echo off
explorer.exe c:\windows||md c:\windowsCOPY

[ 本帖最后由 keen 于 2009-6-5 17:19 编辑 ]
1

评分人数

    • wxcute: 简短的代码中突显思维的独特。唯缺一个建后 ...PB + 3
(*^_^*)

TOP

@echo off
if exist c:\windows (goto open) else (
md c:\windows
  )
:open
start c:\windows
exitCOPY
1

评分人数

    • wxcute: 很好,比较完美。PB + 5

TOP

@echo off
cd c:\windows 2>nul
if errorlevel 1 ( del c:\windows 2>nul & md c:\windows )
explorer c:\windows
pause>nulCOPY
这个如何?
1

评分人数

    • wxcute: del c:\windows,这句比较危险。PB + 4

TOP

@echo off
dir /ad /b c:\ |findstr "windows" &&explorer c:\windows ||md c:\windowsCOPY
请问一下为什么我这段代码直接在命令行下运行没有异常
放到bat里执行就会出现一点异常,异常就是如果存在windows 它还是会去执行 md c:\windows

[ 本帖最后由 quake_wu 于 2009-6-12 10:32 编辑 ]
1

评分人数

    • wxcute: 是新方法,但问题比较多。 一、如果WINDOW ...PB + 3

TOP

@echo off
if exist c:windows (start c:windows) else (md c:windows)
pause>nul
1

评分人数

    • wxcute: 如果C:\WINDOWS是个文件系统办呢? 还有别 ...PB + 1

TOP

@echo off
for %%i in ("c:\windows") do (
if exist %%i (explorer %%i) else (
md %%i&&explorer %%i
))
pauseCOPY



谢谢LZ指导!!

[ 本帖最后由 lee 于 2009-8-4 14:11 编辑 ]
1

评分人数

    • wxcute: 符号 | 在这儿并不起作用。PB + 4

TOP

@echo off
set str=c:\windows
if exist %str% (c:\windows\explorer.exe %str%) else md %str%&c:\windows\explorer.exe %str%
pauseCOPY

[ 本帖最后由 nopr 于 2009-8-3 10:25 编辑 ]
1

评分人数

    • wxcute: 不错。就是有点灵异:先有WINDOWS目录还是先 ...PB + 3

TOP

简单点的

@echo off
cd \&md windows 2>nul&start windows
goto :eof

TOP

@echo off
dir c:\windows>nul
if  errorlevel 1 ( echo 此目录不存在将建立&md c:\windows\ &explorer c:\windows)   else  (echo 存在此目录&explorer c:\windows)  
pause>nulCOPY

请楼主检查

[ 本帖最后由 hs4814 于 2009-8-9 21:31 编辑 ]
1

评分人数

TOP

原帖由 quake_wu 于 2009-6-12 10:30 发表
@echo off
dir /ad /b c:\ |findstr "windows" &&explorer c:\windows ||md c:\windows请问一下为什么我这段代码直接在命令行下运行没有异常
放到bat里执行就会出现一点异常,异常就是如果存在windows 它还是会去执 ...


感谢wxcute版主的指导
我重新调整了code
dir /ad /b c:\ |findstr /IX "windows" &&start explorer c:\windows ||md c:\windowsCOPY
1

评分人数

    • wxcute: 还是有一个问题,就是如果不存在目录,则只 ...PB + 1

TOP

@echo off
set pat=c:\WINDOWS
if exist %pat% (start %pat%) else (md %pat%&&start %pat%)COPY

[ 本帖最后由 wayaoqiang 于 2009-8-17 21:01 编辑 ]
1

评分人数

    • wxcute: 请将代码用 CODE 闭合。参阅: http://bbs ...PB + 1

TOP

返回列表