我们有这样的目录结构
.. \ Document Name_archive \ YYYY \ MonthName
所以我们有很多子文件夹(在不同的文档名称文件夹中),名为\ 2014 \ January ... etc
我们要删除创建日期超过180天的所有文件夹及其内容。
我们更喜欢使用批处理文件脚本,但如果我们需要递归搜索,可能更好的是VBScript。
请问最好的方法是什么?
答案 0 :(得分:2)
这是一个使用递归函数的VBScript解决方案。
' Global FileSystemObject
Set objFSO = CreateObject("Scripting.FileSystemObject")
' Start at the root
DoFolder "c:\document_root\"
' Recursive function
Sub DoFolder(strFolder)
With objFSO.GetFolder(strFolder)
For Each objFile In .Files
If objFile.DateCreated < Date - 180 Then objFile.Delete
Next
For Each objFolder In .SubFolders
DoFolder objFolder.Path
Next
' Checked every file and subfolder. If this folder is empty, remove it...
If .Files.Count = 0 Then If .SubFolders.Count = 0 Then .Delete
End With
End Sub
使用forfiles
命令查看this post批处理示例。