
Se permiten expresiones regulares en los campos "Buscar" y "Coincidencia de nombres de archivo" en grepWin. También me gustaría usar expresiones regulares para especificar la lista de rutas en el campo "Buscar en". ¿Se admite esto y, de ser así, cuál es la sintaxis adecuada?
Actualmente, mi campo "Buscar en" contiene algo como Path1\|Path2\|Path3\
Me gustaría tener algo más parecido Path1\.*\source\|Path2\.*\TestData\
para poder obtener todos los archivos en todas las carpetas denominadas "fuente" en varias subcarpetas de Ruta1 y carpetas denominadas "TestData" en subcarpetas de Ruta2 sin buscar en cada carpeta en Ruta1 y Ruta2.
El enfoque ingenuo sería especificar explícitamente todas las rutas posibles que contengan "fuente" Path1\package1\source\|Path1\package2\source
y demás para obtener todos esos directorios de "fuente" posteriores a Path1 y nada más, pero hay muchos y la lista crece constantemente. Además, la búsqueda en toda la Ruta 1 es claramente funcional, pero podría acelerarse significativamente reduciendo el volumen de archivos procesados.
He jugado con varios intentos de deducir cuál podría ser la sintaxis si las expresiones regulares son compatibles en este campo, pero todavía tengo que ver alguna evidencia de que esté funcionando. El uso de '|' ya que el separador predeterminado sugiere que se está realizando un análisis, pero la expresión regular no es compatible o se admite de alguna manera no estándar, por lo que '|' puede comportarse como lo hace.
Respuesta1
El línea de comando grepWin no admite más de un parámetro de ruta de ninguna manera (y ninguna expresión regular).
La forma de resolver su problema es escribir un lote ( .bat
) que acumule todas sus carpetas de búsqueda en un archivo y luego ejecute grepWin en cada carpeta.
Puede haber mejores soluciones con otras herramientas, pero esa es una cuestión aparte.