Borrar ficheros *.adr creados antes de una fecha dada.

El siguiente script en Bash nos permite borrar los ficheros *.adr (o cualquier otra extensión) creados con anterioridad a una fecha y hora dadas.

#!/bin/bash

# Ruta del directorio a limpiar
DIR="/home/jant.encinar/runDC2"

# Fecha y hora de referencia (formato [[CC]YY]MMDDhhmm)
FECHA="202504240903"

# Crear archivo temporal con la fecha de referencia
touch -t "$FECHA" /tmp/fecha_referencia

# Mostrar archivos .adr que serán eliminados
echo "Archivos .adr anteriores al $FECHA en $DIR:"
find "$DIR" -maxdepth 1 -name "*.adr" ! -newer /tmp/fecha_referencia -type f -print

# Confirmación antes de borrar
read -p "¿Deseas borrar estos archivos? [s/N]: " CONFIRMAR
if [[ "$CONFIRMAR" =~ ^[sS]$ ]]; then
    find "$DIR" -maxdepth 1 -name "*.adr" ! -newer /tmp/fecha_referencia -type f -delete
    echo "Archivos eliminados."
else
    echo "Operación cancelada."
fi

# Borrar archivo temporal
rm -f /tmp/fecha_referencia

¿Cómo usarlo?

nano borrar_adr_antiguos.sh   # Guarda el contenido en un archivo: Pega el contenido
                              # y guarda con Ctrl+O, luego Enter, y sal con Ctrl+X
chmod +x borrar_adr_antiguos.sh    # Haz el fichero borrar_adr_antiguos.sh ejecutable
./borrar_adr_antiguos.sh    # Ejecuta el script

Versión equivalente para ser ejecutada en Windows

# Ruta del directorio a limpiar
$directorio = "D:\aaa\80P_MolPort-010-776-734"  # Cambia esto si tu carpeta es distinta

# Fecha de referencia
$fechaReferencia = Get-Date "2025-04-24 10:05"

# Buscar y eliminar archivos .adr anteriores a esa fecha
Get-ChildItem -Path $directorio -Filter "*.adr" |
    Where-Object { $_.LastWriteTime -lt $fechaReferencia } |
    ForEach-Object {
        Write-Host "Eliminando: $($_.FullName)"
        Remove-Item $_.FullName -Force
    }

Write-Host "`nProceso completado."

¿Cómo usarlo?

Guarda el contenido de esta versión del script como un fichero de texto Borrar-AdrAntiguos.ps1

# Abre PowerShell como administrador (si tienes restricciones de permisos).
.\Borrar-AdrAntiguos.ps1   # Ejecuta el script





Última modificación: