none
Borrar archivos y carpetas desde una fecha. RRS feed

  • Pregunta

  • Hola,

    Estoy trabajando en un hp storageworks nas 1200 con windows 2003 server standard edition en inglés.

    El problema que tengo es:

    Hago una busqueda de archivos antiguos desde la herramienta de busqueda de windows, me encuentra todos los archivos antiguos que quiero eliminar.

    Cuando selecciono todos los archivos y le doy al supr. me hace un pitido i no elimina nada, he intentado con herramientas como el unlocker y otras, entonces me dice que la ruta es muy larga y no se elimina.

    Existe algun metodo para eliminar todos estos archivos? tiene que ser de manera masiva, ya que hay un montón y uno a uno no terminaria nunca.

    lunes, 16 de marzo de 2009 11:57

Respuestas

  • Manel.
    Si no te permite de ese modo, podes intentarlo a traves de la linea de comandos
    Con el comando  DEL y si el nombre de archivo tiene un patron mejor..po ejemplo DEL *2007*.*

    • Propuesto como respuesta MikeSama martes, 24 de marzo de 2009 22:05
    • Marcado como respuesta Atilla ArrudaModerator miércoles, 21 de octubre de 2009 17:57
    martes, 24 de marzo de 2009 22:04
  • Hola Manel,

    Podrias probar con el siguiente Script, claro pero primero tendrias de depurar, y adaptarlo a tu entorno.



    Option Explicit
    on error resume next
     Dim oFSOLog
     Dim oFSOProc
     Dim sDirectoryPathLog
     Dim sDirectoryPathProc
     Dim oFolderlog
     Dim ofolderProc
     Dim oFileCollectionlog
     Dim oFileCollectionProc
     Dim oFile
     Dim iDaysOld

     iDaysOld = 120
     Set oFSOLog = CreateObject("Scripting.FileSystemObject")
     sDirectoryPathLog = "C:\TEMP"
      set oFolderLog = oFSOLog.GetFolder(sDirectoryPathLog)
     set oFileCollectionLog = oFolderLog.Files

    'con esto lograras eliminar los objetos mayores a 120 dias

     For each oFile in oFileCollectionLog
      If oFile.DateLastModified < (Date() - iDaysOld) Then
       oFile.Delete(True)
      End If
     Next

    'borrado complementario

     Set oFSOLog = Nothing
     Set oFSOProc = Nothing
     Set oFolderLog = Nothing
     Set oFolderProc = Nothing
     Set oFileCollectionLog = Nothing
     Set oFileCollectionProc = Nothing
     Set oFile = Nothing

    Para mayor informacion lo puedes revisar en http://www.microsoft.com/spain/technet/recursos/script.mspx

    Atentamente.
    AELM


    Anatol Emilio Lopez Maitchovcow
    miércoles, 27 de mayo de 2009 6:55

Todas las respuestas

  • Manel.
    Si no te permite de ese modo, podes intentarlo a traves de la linea de comandos
    Con el comando  DEL y si el nombre de archivo tiene un patron mejor..po ejemplo DEL *2007*.*

    • Propuesto como respuesta MikeSama martes, 24 de marzo de 2009 22:05
    • Marcado como respuesta Atilla ArrudaModerator miércoles, 21 de octubre de 2009 17:57
    martes, 24 de marzo de 2009 22:04
  • Hola Manel,

    Podrias probar con el siguiente Script, claro pero primero tendrias de depurar, y adaptarlo a tu entorno.



    Option Explicit
    on error resume next
     Dim oFSOLog
     Dim oFSOProc
     Dim sDirectoryPathLog
     Dim sDirectoryPathProc
     Dim oFolderlog
     Dim ofolderProc
     Dim oFileCollectionlog
     Dim oFileCollectionProc
     Dim oFile
     Dim iDaysOld

     iDaysOld = 120
     Set oFSOLog = CreateObject("Scripting.FileSystemObject")
     sDirectoryPathLog = "C:\TEMP"
      set oFolderLog = oFSOLog.GetFolder(sDirectoryPathLog)
     set oFileCollectionLog = oFolderLog.Files

    'con esto lograras eliminar los objetos mayores a 120 dias

     For each oFile in oFileCollectionLog
      If oFile.DateLastModified < (Date() - iDaysOld) Then
       oFile.Delete(True)
      End If
     Next

    'borrado complementario

     Set oFSOLog = Nothing
     Set oFSOProc = Nothing
     Set oFolderLog = Nothing
     Set oFolderProc = Nothing
     Set oFileCollectionLog = Nothing
     Set oFileCollectionProc = Nothing
     Set oFile = Nothing

    Para mayor informacion lo puedes revisar en http://www.microsoft.com/spain/technet/recursos/script.mspx

    Atentamente.
    AELM


    Anatol Emilio Lopez Maitchovcow
    miércoles, 27 de mayo de 2009 6:55
  • Buenas tardes estimado, Saludos!

    Disculpe la molestia, tengo un script sencillo que uso desde hace tiempo, sin embargo algunos procesos han cambiado y se han creados subcarpetas, pero mi script no las elimina.

    Quería saber si me falta actualizar algún comando en mi script para realizar el borrado completo incluyendo las subcarpetas.

    Este es mi script: DeleteFilesOld.vbs

    sFolder = "G:\BackupArchive"
    iMaxAge = 30
    Set oFSO = CreateObject("Scripting.FileSystemObject")
    If oFSO.FolderExists(sFolder) Then
    for each oFile in oFSO.GetFolder(sFolder).Files
    If DateDiff("d", oFile.DateLastModified, Now) > iMaxAge Then
    'wscript.echo "Deleting oFile.Name"
    oFile.Delete
    End If
    next
    End If

    Agradezco de antemano la ayuda que me pueda brindar,

    Saludos,

    Richard 

    jueves, 3 de marzo de 2016 0:16