VBscript从0kb大小和当前日期的目录中删除多个.txt文件

时间:2015-05-15 06:22:30

标签: vbscript

如何使用VBscript从0kb大小和当前日期的目录中删除多个.txt文件?

3 个答案:

答案 0 :(得分:2)

删除@ Hackoo和@legendjr代码(仅使用一次的变量(没有f,没有f.DeleteFile),伪装类型转换,cargo cult Sets to Nothing)并利用{{3}的事实}:

Option Explicit

Const csFolder = ".\30252843"

Dim dblToday : dblToday = Date()
Dim oFile
For Each oFile In CreateObject("Scripting.FileSystemObject").GetFolder(csFolder).Files
    If 0 = oFile.Size And dblToday = Fix(oFile.DateLastModified) Then oFile.Delete True
Next

答案 1 :(得分:0)

这是经过测试的版本,它应该适合您;)

Option Explicit
Dim fs, f, f1, D, MyDate
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFolder("E:\Test")
For Each f1 in f.files
    D = f1.DateLastModified
    MyDate = Split(D," ")
    If f1.size = 0 and Cdate(MyDate(LBound(MyDate))) = Date Then     
    fs.deletefile f1.path,true
End If
Next
Set fs = Nothing
Set f = Nothing
Set f1 = Nothing

答案 2 :(得分:-1)

如果这是一次性清理,您可以使用Windows资源管理器来过滤类型,大小和日期列,以便一次查找和删除它。如果这是一个需要脚本的反复出现的事情,我的第一个猜测就是做这样的事情:

Dim fs, f, f1
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFolder("C:\FolderPath")
For Each f1 in f.Files
    If f1.Size = 0 and f1.DateLastModified = Date Then
        f.DeleteFile
    End If
Next

Set fs = Nothing
Set f = Nothing
Set f1 = Nothing

我还没有测试过这段代码,所以我会先在虚拟位置试一试。我希望这会有所帮助。