Board logo

标题: [数值计算] 批处理如何判断某文件夹下某几类文件的大小是否大于20M? [打印本页]

作者: testss    时间: 2012-9-10 17:01     标题: 批处理如何判断某文件夹下某几类文件的大小是否大于20M?

某个文件夹下有很多文件,如何判断此文件夹下所有的.txt和.log文件的总大小已经超过20M?
我用下面的方法可以取得文件的总大小,但那个数值是有逗号的,不知道如何和20M作比较
  1. for /f "tokens=3 delims= " %%b in ('dir D:\test1\*.txt D:\test1\*.log ^| findstr "个文件"') do (
  2. echo %%b
  3. )
复制代码

作者: forfiles    时间: 2012-9-10 20:29

  1. @echo off
  2. set str=48,989MB
  3. set str=%str:,=%
  4. echo %str%
复制代码

作者: apang    时间: 2012-9-10 22:02

vbs练习。。。
  1. Set FSO = CreateObject("Scripting.FileSystemObject")
  2. For Each File In FSO.GetFolder("D:\test1").Files
  3.    EXT = FSO.GetExtensionName(File)
  4.    If LCase(EXT) = "txt" Or LCase(EXT) = "log" Then
  5.       Size = Size + FSO.GetFile(File).Size
  6.    End If
  7. Next
  8. If Size > 20 * 1024 * 1024 Then
  9.    Result = "大于20MB"
  10.    ElseIf Size = 20 * 1024 * 1024 Then
  11.    Result = "等于20MB"
  12.    Else
  13.    Result = "小于20MB"
  14. End If
  15. MsgBox "大小:"&Size&" 字节"&vbCrLf&"结果:"&Result
复制代码





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2