[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[其他] [已解决]验证文件夹下是否存在文件的批处理出现空格如何解决?

我写了一个简单的BAT去验证文件夹下是否存在这个文件
  1. @echo off
  2. if exist "C:\Program Files\VT\Virtual Tools\Agent\support.bat"
  3. goto a
  4. if not exist "C:\Program Files\VT\Virtual Tools\Agent\support.bat"
  5. goto b
  6. :a
  7. echo "File exist !"
  8. echo.
  9. :b
  10. echo "File does not exist !"
复制代码
============================================
这个文件压根就不执行,我知道应该是双引号的位置放的不对,可是试了几次还是不行..请教..
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

我只想知道如果这么连着写,路径加文件名,中间如果有空格的话,应该如何处理..谢谢了..

TOP

全代码是这样的:

@echo off
if exist "C:\Program Files\VT\Virtual Tools\Agent\support.bat"
goto a

if not exist "C:\Program Files\VT\Virtual Tools\Agent\support.bat"
goto b

:a
echo "File exist !"
echo.
goto end

:b
echo "File does not exist !"
goto end

:end
echo.
echo "Good bye"
echo.
pause
========================================================
能告诉我这段代码为什么窗口一闪而过,似乎并没有执行吗..先谢谢了..
1

评分人数

TOP

pause根本没起作用..为什么呀..窗口并没有停住..而且这个BAT也根本没有执行..

TOP

当然一闪而过了,你的if都用错了
  1. if "%a%"=="1" goto a
复制代码
不是
  1. if "%a%"=="1"
  2. goto a
复制代码
所以完整的代码是:
  1. @echo off
  2. if exist "C:\Program Files\VT\Virtual Tools\Agent\support.bat" goto a
  3. if not exist "C:\Program Files\VT\Virtual Tools\Agent\support.bat" goto b
  4. :a
  5. echo "File exist !"
  6. echo.
  7. goto end
  8. :b
  9. echo "File does not exist !"
  10. goto end
  11. :end
  12. echo.
  13. echo "Good bye"
  14. echo.
  15. pause
复制代码
还有代码可以精简成:
  1. @echo off
  2. if exist "C:\Program Files\VT\Virtual Tools\Agent\support.bat" (echo File exist!) else (echo File does not exist)
  3. echo.
  4. echo Goodbye
  5. echo.
  6. pause
复制代码
最后提醒一下楼主,请把代码括起来!
1

评分人数

    • CrLf: 乐于助人技术 + 1
为何批处理不适合做界面
为何随风讨厌call命令
http://bbs.bathome.net/thread-4482-1-10.html

TOP

原来如此..多谢了..

TOP

这样应该可以吧~还有这问题你很像问过了~http://bbs.bathome.net/thread-13774-1-1.html
  1. @echo off
  2. if exist "C:\Program Files\VT\Virtual Tools\Agent\support.bat" (echo File exist !&echo\&echo Goodbye!&pause) else (echo File does not exist !&echo\&echo Goodbye!&pause)
复制代码
1

评分人数

    • CrLf: 乐于助人PB + 5

TOP

问的不太一样..谢谢回复..

TOP

回复 6# Sgr


    看来你真的是新手,还有要提醒的是:在此论坛,你的问题得到解决后,不想被扣分的话请在帖子的标题那边加上“【已解决】”~
为何批处理不适合做界面
为何随风讨厌call命令
http://bbs.bathome.net/thread-4482-1-10.html

TOP

返回列表