¿Como elimino ciertos archivos de una carpeta en windows masivamente?

Tengo una carpeta (Carpeta1) con +-3,000 archivos (archivo1, archivo2, archivo3...). Después de hacer una validación de datos me doy cuenta que no necesito alrededor de 300 archivos y quiero eliminarlos de esa carpeta. El problema viene cuando esos 300 archivos tienen nombres diferentes no consecutivos (archivo245, archivo20, archivo112...). Realizo esta tarea para 10 diferentes carpetas, lo que se vuelven 3,000 archivos a eliminar. Quiero saber si hay una forma de eliminarlos sin tener que seleccionarlos individualmente y cual sería ésta. {Actualmente en base a la lista de los que se tienen que eliminar hago una búsqueda en la carpeta según el nombre, selecciono el archivo y suprimo}

Si no hay una forma de eliminarlos directamente se me ocurre moverlos a otra carpeta o en su caso mover o copiar los que si me sirven a otra carpeta.

*Cabe mencionar que no soy un experto en programación*

Respuesta
2

La clave de la programación de actividades consiste en trasladar a un programa los criterios que usarías para hacer lo que sea de forma manual. En este caso concreto si eres capaz de decidir que archivos quieres eliminar al revisar visualmente el contenido de cada una de esas 10 carpetas solo tienes que trasladar ese criterio que utilizas a un programa (por ejemplo un BAT). Aunque sea un criterio complejo tiene que existir, sino ¿cómo podrías hacerlo manualmente? Y moverlos a otra carpeta es igual de complicado que borrarlos, porque volvemos a toparnos con "el criterio". Exponnos el criterio e intentaremos ayudarte.

Gracias gggirald, 

En este caso hago una validación contra otra base de datos en Excel, que es la que me arroja cuales archivos no necesito y posteriormente registro los nombres de los archivos en un txt. Lo que intento decir es que el criterio es ese txt. Los nombres contenidos ahí serán los que debo eliminar.

Si te entiendo bien tienes un archivo TXT con el nombre de los archivos que debes borrar. ¿El nombre incluye el path completo, algo como c:\carpeta1\archivoPepito.kkk? Si es así parece que sería tan sencillo como leer una a una las líneas de ese archivo TXT y borrar el archivo referenciado. Bastaría con crear un bat con el siguiente contenido (ajustado a tu realidad, claro):

@echo off
for /f "tokens=*" %%a in (abraham.txt) do del "%%a"

suponiendo que en abraham.txt está la lista de archivos a eliminar. Hay que advertir que si en los nombres de los archivos aparecen letras acentuadas o eñes o algún otro carácter propio del español probablemente salga un mensaje diciendo "El sistema no puede hallar la ruta especificada." Si hay casos de esos habría que hacer un pequeño tratamiento previo para que las cosas funcionen.

Prueba y dinos.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas