Ayuda para crear un BAT complejo

Iniciado por elecktra, 21 Enero 2010, 15:16 PM

0 Miembros y 1 Visitante están viendo este tema.

elecktra

Hola como estan amigos?
Les cuento tengo que crear un BAt algo complejo tengo alguna idea de como hacerlo, pero me falta mas a aprte de programación.
Les cuento, tengo un TXT que contiene lo siguiente:

[Configuracion1]
PuertoCom=1
VelocidadPuerto=115200
NombreReloj=unit
UrlMov=
HorasRecuperacion=08:30-14:30;16:10-16:15;17:45-18:00
HorasSincronizacion=11:01-11:10


De este archivo lo que me importa es lo siguiente.

HorasRecuperacion=08:30-14:30;16:10-16:15;17:45-18:00
HorasSincronizacion=11:01-11:10


Loq ue tengo que lograr es que un BAT lea la hora de widows actual, y segun esa hora modifique la HorasSincronizacion=11:01-11:10 cambiandola a la actual mas unos minutos de mas.
Ejemplo:

Si el archivo contiene la Hora HorasSincronizacion=11:01-11:10 y en la PC nos figura 12:10 entocnes el BAT deberia cambair la HorasSincronizacion=12:03-12:13

Hasta aqui creo es facil, pero nos e como sumarle mas minutos a la hora.
Espero em puedan ayudar.
Gracias.

---saster---

#1
con for se podría hacer :-/

coges con los tokens las horas, y despues si tienen una hora que la cambie por otra

con esto sacas las horas

for /f "tokens=2 delims== skip=5" %%A in (file.txt) do (echo %%A)

kj_


Advertencia - mientras estabas escribiendo, una nueva respuesta fue publicada. Probablemente desees revisar tu mensaje.

pudrías guardar todo en variables y luego reescribir el txt.

sería más o menos así:


for /f %%b in ('findstr /C:"PuertoCom=" txt.txt') do (set pc=%%b)
for /f %%b in ('findstr /C:"VelocidadPuerto=" txt.txt') do (set vp=%%b)
:: y todo lo que quieras meter
for /f %%b in ('findstr /C:"HorasSincronizacion==" txt.txt') do (set hs=%%b)
set horatxt1=%hs:~20,5%
set horatxt2=%hs:~-5%


son eso ya tenemos las todo el txt en variables y las 2 horas que queremos.

ahora tomamos la hora de windows:

set timew=%time:~0,5

hasta ahí te entiendo, pero no se muy bien que cantidad quieres que le sume, o para que quieres hacerlo, si me lo explicas te podré ayudar más.

al final de todo, puede guardar los datos en el txt redireccionando:

(
echo. [Configuracion1]
echo. %pc%
echo. %vp%
echo. etc...
echo. %nuevas-horas-de-recuperación%
echo. %nuevas-horas-de-Horas-Sincronizacion%)>txt.txt


saludos

kj

elecktra

Hola, garcias pro lasl respeustas, te explico, necesitoq eu le sume unos minutos, porque ese archivo es leido por un programa, que ncesecita tener cierta hora apra funcionar..
por otra aprte, tengo que guardar los cambios en el mismo archivo.
Gracias.