• Portada
    • Recent
    • Users
    • Register
    • Login

    Automatizar borrado de ficheros viejos

    Scheduled Pinned Locked Moved Sistemas operativos
    3 Posts 2 Posters 4.0k Views 1 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • TassadarT Offline
      Tassadar
      last edited by

      Al maravilloso SQL 2005, que falla cuando le da la gana, le tengo programadas unas copias de seguridad automáticas, las cuales se hacen correctamente, pero también le tengo puesto que borre las copias con más de 5 días de antiguedad, pero no las borra, no me hace ni puto caso…

      Total, que necesito o bien un comando en MS-DOS que lo automatizaría en una tarea programada, o bien algún programa que sea capaz de borrar todos los archivos de una carpeta que tengan cierta antiguedad, necesito poder decirle que borre todos los archivos que tengan más de 5 dias.

      Alguna idea?

      Gracias ?

      1 Reply Last reply Reply Quote 0
      • lforosL Offline
        lforos Veteranos HL
        last edited by

        Microsoft publicó en el Technet una aplicación de línea de comando que se llama forfiles.exe que te permite generar una lista de ficheros de un directorio filtrando por varios criterios posibles (por ejemplo, por fecha) y luego puedes operar con esa lista de ficheros (por ejemplo, borrarlos).

        Tienes información sobre forfiles en http://technet.microsoft.com/es-es/library/cc753551(WS.10).aspx

        Si googleas forfiles.exe tienes muchos ejemplos para hacer lo que tú quieres como
        Rem: Use Forfiles to Delete Old Files
        o
        Borrado de ficheros por fecha de creación |

        hlbm signature

        TassadarT 1 Reply Last reply Reply Quote 0
        • TassadarT Offline
          Tassadar @lforos
          last edited by

          Muchas gracias lforos!!!

          Aunque la verdad es que ayer me harté de buscar y me hice un proceso por lotes que me mantiene las 5 últimas copias de seguridad y va borrando la quinta que tiene almacenada ?

          No lo hace por fechas, pero mantiene las últimas 5 copias, no es elegante, pero funciona de puta madre, jeje

          Lo pongo por aquí por si a alguien le puede interesar:

          –----------------------------------------------------
          REM Proceso creado por Tassadar para borrar automáticamente las copias de seguridad del SQL que sean viejas
          REM Mantiene siempre las últimas 5 copias + la del día actual (HOY)
          REM
          REM
          REM Uso:
          REM 1.--Meter en la carpeta PLANTILLA (X:\MSSQL\BACKUP\PLANTILLA) todas las carpetas (vacías) de todas
          REM las bases de datos
          REM 2.--Este proceso por lotes va en la carpeta X:\MSSQL\BACKUP
          REM 3.--Se debe configurar el SQL para hacer las copias en X:\MSSQL\BACKUP\HOY en lugar de X:\MSSQL\BACKUP
          REM 4.--No es necesario crear ninguna carpeta dentro de X:\MSSQL\BACKUP\ excepto la primera vez HOY y PLANTILLA
          REM 5.--Ejecutar éste proceso UNA VEZ cada día (automatizándolo)
          REM

          REM Primero hay que borrar la copia mas vieja
          rd DIA5 /s /q

          REM Renombrar para que quede reflejado que las copias son un dia mas viejo
          rename DIA4 DIA5
          rename DIA3 DIA4
          rename DIA2 DIA3
          rename DIA1 DIA2

          REM Las copias actuales pasan a ser las del dia1
          rename HOY DIA1

          REM Restauramos carpeta HOY con la escructuravacía según la plantilla
          MD HOY
          xcopy /e PLANTILLA HOY

          Un saludo

          1 Reply Last reply Reply Quote 0

          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

          With your input, this post could be even better 💗

          Register Login
          • 1 / 1
          • First post
            Last post

          Foreros conectados [Conectados hoy]

          4 usuarios activos (0 miembros y 4 invitados).
          febesin, pAtO, smith

          Estadísticas de Hardlimit

          Los hardlimitianos han creado un total de 543.7k posts en 62.9k hilos.
          Somos un total de 35.0k miembros registrados.
          JerryOld ha sido nuestro último fichaje.
          El récord de usuarios en linea fue de 123 y se produjo el Thu Jan 15 2026.