Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Pela667

#1
bueno, encontre una manera malisima de que funcione, pero si alguien se copa en mejorar este enchastre, bienvenido.
hice esto, ya se que me gane todas las puteadas, pero es lo que hay...
@echo off

setlocal enabledelayedexpansion
start GTR2WGen.exe
ping -n 3 127.0.0.1 > null
setlocal enabledelayedexpansion
attrib -r weather.txt
set num1=Race1
set num2=Race2
set num3=Race1

for /f "tokens=*" %%A in (weather.txt) do (set "resultado=%%A")&call :sub
for /f "tokens=*" %%A in (salida.txt) do (set "resultado2=%%A")&call :sub2
for /f "tokens=*" %%A in (final.txt) do (set "resultado2=%%A")&call :sub3
copy fin.txt weather.txt
attrib +r weather.txt
del null
del GTR2WGenLog.txt

:sub
echo !resultado:Qualify2=%num1%!>>salida.txt
goto:eof

:sub2
echo !resultado2:Race=%num2%!>>final.txt
goto:eof

:sub3
echo !resultado2:Race21=%num3%!>>fin.txt
goto:eof



el ping es para que me haga una pausa y le da tiempo al exe a generar los archivos que despues modifico... es la unica que encontre para hacer.
y por algun motivo, cuando modifico el primer race1, al buscar el race para cambiarlo por race2, me modificaba el race1 por race21... ni idea el motivo, pero cree un txt nuevo y lo solucione...
#2
Scripting / BAT. Cambiar 2 palabras en un txt
24 Enero 2014, 19:43 PM
Hola muchachada.
De vez en cuando consulto este foro y mas de una vez me sacaron del apuro.
Esta vez no tuve suerte, ya que lo que estoy necesitando no lo pude encontrar.
El tems es que necesito reemplazar 2 palabras en un txt, y hasta donde llegan mis muy basicos conocimientos de programación, llego a cambiar solo uno.
el codigo es el siguiente, a ver si me pueden tirar una soga.

@echo off
setlocal enabledelayedexpansion
attrib -r weather.txt
set num1=Race1
for /f "tokens=*" %%A in (weather.txt) do (set "resultado=%%A")&call :sub
copy salida.txt weather.txt
del salida.txt
attrib +r weather.txt
goto:eof
:sub
echo !resultado:Qualify2=%num1%!>>salida.txt
goto:eof


Esto me cambia Qualify2 por Race1, y funciona ok.
A su vez, necesito agregar otra palabra a cambiar, pero no se como se trabaja con mas de una variable, o si existe otra manera de hacerlo.
Espero haber sido claro.
Desde ya, muchisimas gracias!