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

[问题求助] [已解决]VBS怎样判断文件是否存在并判断文件大小?

本帖最后由 batchvv 于 2014-10-4 23:16 编辑

先判断C:\1.exe是否存在,存在则再判断文件大小是否大于10K,大于则结束1.exe进程再复制D:\1.exe文件到C:\并显示文件修复成功,
否则直接退出!不存在C:\1.exe就直接退出!写得有点绕,不知道大家能不能看懂,会的帮忙写下,先谢谢了!
1

评分人数

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

最讨厌数字名的可执行文件了。。。。
灌水吗?绝不承认!
初学BAT,非专业。代码不适当之处还望前辈们多多指点。在此表示感谢!

TOP

  1. @echo off &color 0a
  2. if exist "C:\1.exe" (
  3.   for /f "delims=" %%a in ('dir /b /a -d "C:\1.exe" 2^>nul') do (
  4.     if %%~za GTR 10240 (
  5.       taskkill /f /im 1.exe >nul 2>nul
  6.       copy /y "D:\1.exe" "C:\"
  7.       if ERRORLEVEL 0 (echo.文件修复成功.&goto :end)
  8.     )
  9.   )
  10. )
  11. :end
  12. echo.按任意键退出
  13. pause.>nul
  14. call exit
复制代码
1

评分人数

TOP

其实只要判断 1.exe 的体积是否大于 10K 就行了,不存在和小于 10K 的结果是一样的
借 3 楼代码小改一下:
  1. @echo off &color 0a
  2. for %%a in ("C:\1.exe") do (
  3.    if %%~za GTR 10240 (
  4.       taskkill /f /im 1.exe >nul 2>nul
  5.       copy /y "D:\1.exe" "C:\" && echo.文件修复成功.
  6.    )
  7. )
  8. echo 按任意键退出
  9. pause>nul
复制代码

TOP

楼上两位大大,我说的是VBS,批处理是我自己写错了,不好意思啊,可以麻烦再写一个吗?谢谢啦

TOP

回复 4# CrLf


    您好!之前是我搞错了,可以麻烦你再写一个vbs的吗?谢谢啦!

TOP

自己解决了!不够技术分加了,谢谢大家

TOP

返回列表