2012-07-31 47 views
2

我试图使用以下VB脚本从Windows Temp文件夹中删除以字符串“MyApp”开头的所有日志文件。如何删除使用VBScript在临时文件夹中以特定名称开头的所有文件

Dim objFSO 
Set objFSO = CreateObject("Scripting.FileSystemObject") 

if objFSO.FolderExists("C:\Documents and Settings\guest\MyApp") Then 
      set folder = objFSO.getFolder("C:\Documents and Settings\guest\MyApp") 

if folder.files.Count <> 0 then 
    objFSO.DeleteFile "C:\Documents and Settings\guest\MyApp\*.*", True 
end if 
      objFSO.DeleteFolder "C:\Documents and Settings\guest\MyApp", True 
end if 

<!-- The below code is not deleting the files which starts with the name "Mpp.023648011.log" --> 

if(objFSO.FileExists("C:\Documents and Settings\guest\Local Settings\Temp\MyApp.*")) Then 
    objFSO.DeleteFile "C:\Documents and Settings\guest\Local Settings\Temp\MyApp.*", True 
end if 

看来下面检查失败:

如果(objFSO.FileExists( “C:\ Documents和Settings \客\本​​地设置的\ Temp \ MyApp的*”))

提前致谢。

我找到了一种抑制错误信息并执行DeleteFile的方法。它为我工作。

 On error resume next 

    objFSO.DeleteFile "C:\Documents and Settings\guest\Local Settings\Temp\MyApp.*", True 
+2

最佳发布此作为回答,否则人们不断以帮助 – peter 2012-08-01 14:59:57

+0

@peter打开此网页 - 我怎样才能发布此作为答案。 – JChan 2012-08-02 19:36:59

+0

像你回答其他人的问题,填写下面的编辑,然后单击“发布你的答案”,可能是你必须等待一天,所以才可以 – peter 2012-08-02 20:05:08

回答

4

我觉得VBScript中使用通配符支持FILEEXISTS。更好的选择只是抑制删除的错误并运行DeleteFile命令。

On error resume next 

objFSO.DeleteFile "C:\Documents and Settings\guest\Local Settings\Temp\MyApp.*", True 
相关问题