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

[代码合集] 磁盘容量判定的VBS下如何调用bat删除文件?

我如何将下面两个脚本结合起来实现运行磁盘容量判定大小,如果E盘容量小于10%自动调用bat脚本删除磁盘文件,进行循环判定!1.vbs是判定磁盘大小的,2.bat是删除E盘下制定目录下的文件的。怎样才能结合起来,实现循环判定呢?
脚本如下:1.vbs
  1. Set objWMIService = GetObject("winmgmts:")
  2. Set objLogicalDisk = objWMIService.get("Win32_LogicalDisk.DeviceID='e:'")
  3. dim c
  4. c=now
  5. s = objLogicalDisk.Size/(1024*1024*1024)
  6. s = round(s,2)
  7. ' WScript.Echo "全部磁盘:"&s& " G "
  8. m = objLogicalDisk.FreeSpace/(1024*1024*1024)
  9. m = round(m,2)
  10. ' WScript.Echo "剩余空间:"&m& " G "
  11. a=m/s
  12. a = round(a,2)
  13. w = (FormatPercent(a,2))
  14. ' WScript.Echo " 磁盘剩余空间= "&w
  15. If (a > 0.05)  then
  16.   If (a < 0.1)  then
  17.   call mail()
  18. End if
  19. end if
  20. Sub mail()
  21. Set objEmail = CreateObject("CDO.Message")
  22. objEmail.From = "ys@qq.com" '发件人
  23. objEmail.To = "ys@qq.com" '收件人
  24. objEmail.Subject = "E盘可用大小判定删除" '主题
  25. objEmail.Textbody = " "   '内容
  26. 'objEmail.AddAttachment "" '附件
  27. objEmail.Configuration.Fields.Item _
  28.    ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
  29. objEmail.Configuration.Fields.Item _
  30.    ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = _
  31.        "smtp.qq.com"
  32. objEmail.Configuration.Fields.Item _
  33.    ("http://schemas.microsoft.com/cdo/configuration/sendusername") = "dayin@qq.com" '用户名
  34. objEmail.Configuration.Fields.Item _
  35.    ("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "**" '密码
  36. objEmail.Configuration.Fields.Item _
  37.    ("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1 '明文验证
  38. objEmail.Configuration.Fields.Item _
  39.    ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
  40. objEmail.Configuration.Fields.Update
  41. objEmail.Send
  42. end Sub
复制代码
2.bat
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "delims=" %%a in ('dir /ad /b e:\rec\*') do (
  3.     echo %%a| findstr "^[0-9]*-[0-9]*-[0-9]*$">nul &&set #%%a=%%a
  4. )
  5. for /f "tokens=1,2 delims==" %%a in ('set #') do (
  6.     rd /s /q "e:\rec\%%b\"& goto :eof
  7. )
复制代码
Good Good Study,Day Day Up!!

返回列表