如何使用VBscript从0kb大小和当前日期的目录中删除多个.txt
文件?
答案 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
我还没有测试过这段代码,所以我会先在虚拟位置试一试。我希望这会有所帮助。