Procesar varios archivos por línea de comandos en Windows.-

Para aplicar un cierto acción a varios archivos desde la línea de comandos de Windows existe la instrucción forfiles.

En Windows 7, la invocación tiene los siguientes parámetros (todos son opcionales):

/P : ruta sobre la cual buscar los archivos
Si no se especifica, se considera el directorio actual
/S: se procesan los subdirectorios del path recursivamente
/M : patrón de los archivos a considerar, pudiendo indicar nombre y extensión. Por ej: *.log
Si no se especifica, se considera *
/D { [+] | – }{ dd/mm/aaaa | N }: selecciona archivos a partir de la fecha de última modificación de cada uno.
Si no se especifica el signo -, se considera por defecto +
-dd/mm/aaaa: fecha de última modificación anterior o igual a dd/mm/aaaa
+dd/mm/aaaa: fecha de última modificación posterior o igual a dd/mm/aaaa
-N: fecha de última modificación anterior o igual a la fecha actual menos N días
+N: fecha de última modificación posterior o igual a la fecha actual más N días
/C “”: indica la acción a ejecutar sobre cada uno de los archivos que hayan sido seleccionados
Si no se especifica, se considera “cmd /c echo @file”
Si se desea utilizar un comando de CMD, deben estar precedidos por “cmd /c”
Variables disponibles en
@file: nombre del archivo
@fname: nombre de archivo sin extensión
@ext: extensión del archivo
@path: ruta de acceso completa al archivo
@relpath: ruta de acceso relativa del archivo
@isdir: “TRUE” si es un directorio y “FALSE” si es un archivo
@fsize: tamaño del archivo en bytes
@fdate: última fecha de modificación del archivo
@ftime: última hora de modificación del archivo

Ejemplos:

forfiles /P C:\logs /D -20 /C «cmd /c del @path»

Borra los archivos del directorio logs de más 20 días desde su última fecha de modificación

forfiles /C «cmd /c if @isdir==TRUE echo @file»

Imprime por pantalla los directorios que se encuentren en la ruta actual

forfiles /P C:\Documents\ /S /M *.xlsx /C «cmd /c echo @fname – @fdate»

Muestra el nombre y fecha de última modificación de cada uno de los archivos de Excel dentro del directorio de documentos (y subdirectorios)

Esta entrada fue publicada en BATCH - DOS. Guarda el enlace permanente.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *