Cómo eliminar archivos con más de «x» días de antigüedad

¿Tu ordenador está lleno de archivos antiguos que ya no usas pero no sabes cómo eliminarlos fácilmente? No te preocupes, en este artículo te enseñaremos a eliminar archivos con más de «x» días de antigüedad de forma rápida y sencilla. Así podrás liberar espacio en tu disco duro y mejorar el rendimiento de tu computadora. ¡Sigue leyendo para descubrir cómo hacerlo!

Este VBScript se puede usar para eliminar archivos en una carpeta que tienen más de una cierta cantidad de días en comparación con el archivo Last Modified Date. Este ejemplo recopila información del usuario sobre la carpeta de origen, el nombre del archivo de registro y la cantidad de días para comparar la última marca de tiempo modificada del archivo.

Tenga en cuenta que este script Borrar archivos. Tenga cuidado ya que no hay mucho código en la lista a continuación para validar lo que está ingresando. Si proporciona al programa entradas incorrectas, puede eliminar archivos que no estaban destinados a ser objetivo.

'vbscript to delete files older than a given number of days.
'WARNING: Deleted files will not be stored in the recycle bin
'
'Declare variables
Dim LogFile
'
'----- Start Main Sub -----
Main
Sub Main()
SourceFolderNamePath=inputbox("Enter the Source Path, ex. C:\Test\")
LogFileNamePath=inputbox("Enter the LogFile Name Path, ex. C:\Logs\Deleted.TXT")
DeleteDaysOld=CInt(inputbox("Enter the number of days in which a file should be deleted if older, ex. 30"))
Call DeleteOldFiles(SourceFolderNamePath,LogFileNamePath,DeleteDaysOld)
End Sub
'
Sub DeleteOldFiles(SourceFolder, logfile, days)
Dim fso,f,f1,s,fi, cnt, tot
'
LogOpen(logfile)
LogWrite "------------------------------------------------------"
LogWrite " Program Started...Searching for Files to Remove "
LogWrite "------------------------------------------------------"
cnt = 0
tot = 0
'
Const ReadOnly = 1
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.GetFolder(SourceFolder)
Set fc = f.Files
For Each f1 in fc
If DateDiff ("d",f1.DateLastModified, Now ) > days Then
LogWrite f1.name & " DateLastModified:" & f1.DateLastModified & " DaysOld:" & DateDiff ("d",f1.DateLastModified, Now )
If f1.Attributes And ReadOnly Then
f1.Attributes = f1.Attributes Xor ReadOnly
End If 

fso.DeleteFile (SourceFolder & f1.name)
cnt = cnt + 1End If
tot = tot + 1
Next
LogWrite "--------------------------------------------------------------"
LogWrite " Processed " & tot & " file(s). Deleted " & cnt & " file(s). "
LogWrite "--------------------------------------------------------------"
LogClose
MsgBox("Delete process completed successfully." + vbCRLF + "Please review the log file at " + logfile)
'
End Sub
'
'
Sub LogOpen (LogPath)
Dim fso, f1
Const ForAppend = 8
Set fso = CreateObject("Scripting.FileSystemObject")
Set LogFile = fso.OpenTextFile(LogPath, ForAppend, True)
Set fso = nothing
End Sub
'
Sub LogWrite (Text)
LogFile.WriteLine "[" & Now & "] " & Text
End Sub
'
'
Sub LogClose ()
LogFile.Close
Set Logfile=nothing
End Sub

Cannot search an empty string. A search keyword is required.

Deja un comentario