Hoy voy a enseñaros un pequeño script el cual seguramente a aquellos que os dedicáis a la administración de sistemas os será de mucha utilidad ya que os permitirá eliminar archivos con una antigüedad mayor a una serie de días que especifiquemos. Esto es muy útil para por ejemplo eliminar los típicos .bak que se nos van quedando antiguos y no hacen otra cosa que ocuparnos espacio.
Eliminar todos los archivos de un directorio
En el script que os voy a mostrar a continuación vamos a eliminar todos los archivos que se encuentren dentro de un directorio concreto y que tengan una antigüedad mayor a 3 días desde su fecha de creación.
Nota: Como os imaginareis podéis cambiar la antigüedad simplemente cambiando el parámetro -3.
Get-ChildItem -Path "C:\ruta_directorio" -Recurse | Where-Object CreationTime -LT (Get-Date).AddDays(-3) | Remove-Item
Eliminar todos los archivos de un directorio con una extensión concreta
Si queremos darle una vuelta de tuerca al script y eliminar sólo aquellos archivos de un directorio concreto, con una antigüedad mayor a 3 días y que además, por ejemplo, tenga la extensión .bak tendremos que modificar un poco el script:
Get-ChildItem -Path "C:\ruta_directorio" -Include *.bak -Recurse | Where-Object CreationTime -LT (Get-Date).AddDays(-3) | Remove-Item
Y listo esto sería todo aunque si queréis automatizar la tarea para que se ejecute todos los días y no tengáis que hacerlo de forma manual mi recomendación es que os creéis una tarea programada de Windows que se encargue de ejecutar el script de forma totalmente automática.
Espero os haya sido de utilidad.
Entradas relacionadas
- Agregar información en el campo Teléfonos/Notas de un Usuario de Active Directory con PowerShell
- PowerShell: Como importar usuarios en Active Directory desde un fichero CSV
- Exchange: Mostrar y ocultar contactos, usuarios y grupos de la libreta de direcciones GAL en Office 365 mediante PowerShell
- PowerShell: Como obtener los miembros de los grupos de distribución existentes en Office 365
- PowerShell: Notificación por correo electrónico a los usuarios del tiempo restante hasta la caducidad de su contraseña de dominio
- PowerShell: Como exportar a Excel usuarios de Active Directory
- Obtener información de certificados en Windows conociendo sólo su huella digital (thumbprint) mediante Powershell
- Gestión de servicios de Windows con Powershell
Me dedico a la Administración de Sistemas y he creado este blog para compartir mis conocimientos con toda la comunidad y así aportar mi granito de arena y ayudar a todo el que lo necesite.