Forfiles.exe sirve para seleccionar y ejecutar un comando en un archivo o un conjunto de archivos. Este comando es útil para el procesamiento por lotes.

Sintaxis

FORFILES [/p Path] [/m SrchMask] [/s] [/c Command] [/d[+ | -] {date | dd}]

Claves

/p Path La ruta a buscar (por defecto la carpeta donde se ejecuta)
/m SrchMask Seleccionar los archivos que coinciden con el criterio de búsqueda especificado (por defecto *.*)
/s Recursividad en subcarpetas
/C command El comando a ejecutar para cada archivo. Limitar la cadena entre comillas dobles. Por defecto "cmd / c echo @ file"
/D date Seleccionar los archivos con una última fecha de modificación mayor que o igual a (+), o menos que o igual a (-), la fecha especificada, con la región de formato de fecha específica. Envolver con comillas dobles. Formato "MM / DD / yyyy" o "DD / MM / yyyy"
/D + dd Seleccione los archivos con una última fecha de modificación mayor que o igual a la fecha actual más días "dd". (en el futuro)
/D - dd Seleccione los archivos con una fecha de última modificación menor o igual a la fecha actual menos días "dd". (en el pasado)

Un número válido "dd" del día puede ser cualquier número del rango de 0 a 32768. (89 años) Por defecto se selecciona "+" si no se especifica nada.

Variables

@file El nombre del archivo
@fname El nombre del archivo sin la extensión
@ext Sólo la extensión del archivo
@path La ruta completa del archivo
@relpath La ruta relativa del archivo
@isdir Devuelve "true" si el archivo es un directorio o devuelve "false" si es un archivo
@fsize Tamaño del archivo
@fdate Última fecha de modificación
@ftime Última modificación en tiempo (horas, minutos y segundos)

Ejemplos

Eliminar archivodeprueba.txt si es de hace 10 días o más
C:\> forfiles /m archivodeprueba.txt /c "cmd /c Del archivodeprueba.txt " /d -10

Encontrar archivos .doc que tengan fecha de modificación igual o superior a 100 días
C:\> FORFILES /M *.doc /C "cmd /c echo @path ha cambiado hace 30 días" /D -30

Listar todos los archivos .xls
C:\> FORFILES /S /M *.xls /C "cmd /c echo @fsize"

Documentación oficial del comando Forfiles.exe