我在这里找到了这个脚本。
然后从我的批处理文件中使用这个命令来调用它
cscript recyclebin.vbs >> "logs\recyclebin.txt"
请将以下内容保存为recyclebin.vbs
:
Option Explicit
Dim g_objWshShell, g_objFSO, g_sLogFile, g_objWshNetwork, g_sScriptName, g_sComputerName, g_sUserName
Dim g_sVer, g_objLogFile, g_sLogDir
Set g_objWshShell = WScript.CreateObject("WScript.Shell")
Set g_objFSO = CreateObject("Scripting.FileSystemObject")
Set g_objWshNetwork = WScript.CreateObject("WScript.Network")
g_sComputerName = g_objWshNetwork.Computername
g_sUserName = g_objWshNetwork.UserName
g_sScriptName=UCase(WScript.ScriptName)
Const FORREADING = 1, FORWRITING = 2, FORAPPENDING = 8
g_sLogDir = "C:\TEMP"
If Not (g_objFSO.FolderExists(g_sLogDir)) Then
g_objFSO.CreateFolder(g_sLogDir)
End If
g_sLogFile = g_sLogDir & "\" & Left(g_sScriptName, Len(g_sScriptName) - 3) & "LOG"
g_sVer = "1.0"
If g_objFSO.FileExists(g_sLogFile) Then
g_objFSO.DeleteFile(g_sLogFile)
End If
Set g_objLogFile = g_objFSO.CreateTextFile(g_sLogFile, FORWRITING)
Call Main()
Call ExitScript()
Sub Main()
Dim objRecycleBin, objFolderItems, objItem, strSpecialFolderName
strSpecialFolderName = "Recycle Bin"
Set objRecycleBin = GetSpecialFolderObject(strSpecialFolderName)
Set objFolderItems = objRecycleBin.Items()
For Each objItem In objFolderItems
If (objItem.Type = "File Folder") Then
g_objFSO.DeleteFolder(objItem.Path)
Else
g_objFSO.DeleteFile(objItem.Path)
End If
WScript.Echo "Deleted " & objItem.Name
Next
End Sub
Function GetSpecialFolderObject(NameOfFolder)
Dim objShellApp, i, objSpecialFolder
Set objShellApp = CreateObject("Shell.Application")
On Error Resume Next
For i=0 To 40
Set objSpecialFolder = objShellApp.NameSpace(i)
If (StrComp(objSpecialFolder.Title, NameOfFolder, vbTextCompare) = 0) Then
Set GetSpecialFolderObject = objSpecialFolder
Exit For
End If
Next
Err.Clear
End Function
Sub ExitScript()
If IsObject(g_objLogFile) Then
g_objLogFile.Close
End If
Wscript.Quit
End Sub
Sub EndOnError(sErrorString)
WScript.Echo sErrorString & vbCrLf & "Check " & Chr(34) & g_sLogFile & Chr(34) & " for details"
Call WriteLine (sErrorString, g_objLogFile)
WScript.Quit()
End Sub
Sub ShowUsage()
WScript.Echo g_sScriptName & " v" & g_sVer & " Empties Recycle Bin for logged on user" & vbCrLf _
& vbCrLf & "USAGE: [CSCRIPT] " & g_sScriptName
WScript.Quit
End Sub
Sub WriteLine(ByVal strMessage, ByVal objFile)
On Error Resume Next
If IsObject(objFile) Then
objFile.WriteLine strMessage
Else
Call Wscript.Echo(strMessage)
End If
End Sub