Hola, soy nuevo en esto de batch,
quisiera saber como hago lo siguiente:
Necesito un batch q busque un archivo llamado "file.exe" en "%programfiles%\carpeta" y q al encontrarlo lo reemplase por otro de la carpeta c:. Pero el tema es q si no encuentra el archivo "file.exe" en "%programfiles%\carpeta" lo vuelva a buscar en esa carpeta hasta encontrarlo.
espero haber sido claro y q me entiendan. muchas gracias.
Si no estoy mal mas o menos esto es lo que deberia de hacer para la busqueda
cd /d "%homedrive%\archivos"
for /d /r %%_ in (*) do
if exist "%%_\file.txt"
SABIA que lo vi en alguna parte jejeje aqui (http://foro.elhacker.net/scripting/buscar_archivos_en_subcarpetas_batch-t251733.0.html;msg1216738) lo tienes..
Cita de: diegoalbarado en 16 Mayo 2011, 05:39 AM
espero haber sido claro y q me entiendan. muchas gracias.
Leete un manual básico para aprender a hacer bucles.
El código busca el archivo hasta encontrarlo, si lo encuentra lo reemplaza y luego el batch finaliza. Si no quieres que el batch se termine, y siga buscando aún despues de haberlo reemplazado, borra las lineas de
"if reemplazado" y
"set reemplaazado" y listo.
Saludossss
## By PiToLoKo
@echo off
:BUCLE
If %reemplazado% EQU 1 exit
if exist "%programfiles%\carpeta\file.exe" do (
copy /y c:\file.exe "%programfiles%\carpeta\file.exe"
set reemplazado=1
goto:bucle
) ELSE (
ping -n 1 localhost >nul
goto:bucle)
PD: listo lo del ping XD sorry
Se te quedo el ping pegado al guión.
muchisimas gracias por la ayuda tan rapida. me ayudo muchisimo sus respuestas. tuve q hacer algunas modificaciones por q no me funciono de entrada pero muchas gracias igual