
¿Cómo puedo crear un BAT o CMD que iterará a través de un árbol de carpetas y ejecutará el mismo comando en cada archivo de carpeta?
P.ej
myexe.exe C:\Documents and Settings\folder1\filename.txt
myexe.exe C:\Documents and Settings\folder2\filename.txt
Notas:
- El nombre del archivo es el mismo en cada carpeta encontrada.
- Los nombres de las carpetas serán todos diferentes.
Se agradece mucho su ayuda o cualquier pista sobre por dónde empezar.
Respuesta1
Adapte este archivo por lotes a sus necesidades:
@echo off
cd "\program files"
for /f "usebackq delims=|" %%a in (`dir filename.txt /s/b`) do (
echo %%a
myexe "%%a"
)
asegúrese de incluir la variable entre comillas dobles en caso de que el nombre del archivo tenga espacios.
Respuesta2
Un enfoque de PowerShell:
Obtener-ChildItem -Recurse. NOMBRE DE ARCHIVO.TXT | para cada { $_ & myexe $_ }