案例:本人在文件服务器上有个共享的”share files“目录,其他部门需要定期删除里面的文件。
解决办法尝试一:
使用dos命令,命令如下:
attrib -s -h -r %1\*.* && del %1\*.* /q
dir %1 /ad /b /s >del.txt
for /f %%i in (del.txt) do rd %%i /s /q
(网上搜得)
以上能解决问题,但由于我文件夹命名的时候,“share”和“files”之间有空格,测试中在执行到for语句时出现文件夹名被截断的问题,因此改用其他方式。
解决办法尝试二:
'删除指定目录下的文件和子文件夹
Dim fso, startFolder, OlderThanDate
Set fso = CreateObject("Scripting.FileSystemObject")
startFolder = "E:\Test\" ' 指定目录
OlderThanDate = DateAdd("d", 0, Now) ' 如果你想删除3日前的文件,可以改变0为3
Sub DeleteOldFiles(folderName, BeforeDate)
Dim folder, file, fileCollection, folderCollection, subFolder
Set folder = fso.GetFolder(folderName)
Set fileCollection = folder.Files
For Each file In fileCollection
If file.