Autor
|
Tema: Temporizador en BATCH (Leído 14,816 veces)
|
zhynar_X
Desconectado
Mensajes: 515
Use linux my friend...
|
Hola, tengo una duda, hay alguna forma en batch de hacer que cuando pasen 20 minutos por jemplo el programa haga algo??
Saludos
|
|
|
En línea
|
Me he creado un blog: http://zhynar.blogspot.com Aver si os gusta! Optimista es aquel que cree poder resolver un atasco de trafico tocando el claxon (Anonimo)
|
|
|
Hendrix
|
Aqui lo tienes, no lo he probado, asi que si tiene fallos avisa.... @echo off set man=%time:~3,2% set /a min=%man%+20 echo %time% echo %min% if %min% GTR 60 (set /a min=%min%-60) :while Set now=%time:~3,2% if %now% == %min% (goto accion) else (goto while) :accion echo Ya han pasado 20 minutos
Un Saludo.
|
|
|
En línea
|
"Todos los días perdemos una docena de genios en el anonimato. Y se van. Y nadie sabe de ellos, de su historia, de su peripecia, de lo que han hecho, de sus angustias, de sus alegrías. Pero al menos una docena de genios se van todos los días sin que sepamos de ellos". - Juan Antonio Cebrián
|
|
|
zhynar_X
Desconectado
Mensajes: 515
Use linux my friend...
|
Muchas gracias por el codigo Saludos
|
|
|
En línea
|
Me he creado un blog: http://zhynar.blogspot.com Aver si os gusta! Optimista es aquel que cree poder resolver un atasco de trafico tocando el claxon (Anonimo)
|
|
|
sirdarckcat
Aspirante a supervillano
Colaborador
Desconectado
Mensajes: 7.029
No estoy loco, soy mentalmente divergente
|
:-/ el batch consume memoria, seria mejor usar AT, aunque ocupa tambien, no ocupa tanta
|
|
|
En línea
|
|
|
|
Hendrix
|
|
|
|
En línea
|
"Todos los días perdemos una docena de genios en el anonimato. Y se van. Y nadie sabe de ellos, de su historia, de su peripecia, de lo que han hecho, de sus angustias, de sus alegrías. Pero al menos una docena de genios se van todos los días sin que sepamos de ellos". - Juan Antonio Cebrián
|
|
|
nhaalclkiemr
Desconectado
Mensajes: 1.678
Máximo exponente 9DB9F1AEED2FADBDE 997BBE20FEDA92
|
Claro, por hacer se podría usar tambien el comando ping para esperar...pero lo mejor es usar AT o SCHTASKS Aunke lo malo es que necesitas privilegios de Administrador... @echo off set a=0 set z=%TIME:~0,2% if "%TIME:~0,1%"==" " set z=0%TIME:~1,1% if "%TIME:~8,1%"=="," goto normal if "%TIME:~10,1%"=="," goto 2caso if "%TIME:~12,1%"=="," goto 3caso :normal set x=%TIME:~3,2% set y=%TIME:~6,2% goto a :2caso set x=%TIME:~4,2% set y=%TIME:~8,2% goto a :3caso set x=%TIME:~5,2% set y=%TIME:~10,2% :a set errorlevel= set /A a=%a%+1 if "%x%"=="08" set x=8 if "%x%"=="09" set x=9 set /A x=%x%+20 if %x% GTR 59 set /A x=%x%-60 at.exe %z%:%x% "archivo_que_quieras" if %a%==11 goto b if not %errorlevel%==0 goto a exit :b set a=0 :c set errorlevel= set /A a=%a%+1 if %x% LEQ 9 set x=0%x% schtasks /create /tn temp /tr "archivo_que_quieras" /sc once /st %z%:%x%:%y% /ru System if %a%==11 goto error if not %errorlevel%==0 goto c exit :error echo "Se ha producido un error con los comandos, provando instruccion ping" ping 127.0.0.1 -n 1200 "archivo que quieras" exit Este code te debería de funcionar, substitue "archivo_que_quieras" por el archivo que quieras (logico ) y debería de funcionar... Primero intenta utilizar el comando AT, despues el SCHTASKS y en caso de fallar utiza la instrucción PING para esperar los 20 minutos... Saludos Saludos
|
|
« Última modificación: 8 Mayo 2007, 15:35 pm por nhaalclkiemr »
|
En línea
|
StasFodidoCrypter 1.0 - 100% (old) | StasFodidoCrypter 2.0 - 85% (deserted) | Fire AV/FW-Killer - 97% (deserted) | R-WlanXDecrypter 1.0- 100% |
|
|
|
sirdarckcat
Aspirante a supervillano
Colaborador
Desconectado
Mensajes: 7.029
No estoy loco, soy mentalmente divergente
|
ah tienes razon nhaalclkiemr necesitas ser admin.. no habia pensado en eso.. se podria hacer mas pequeño tu codigo jeje , pero parece q funciona ping es una buena opcion para emular un sleep() pero para este Saludos!!
|
|
|
En línea
|
|
|
|
|
nhaalclkiemr
Desconectado
Mensajes: 1.678
Máximo exponente 9DB9F1AEED2FADBDE 997BBE20FEDA92
|
ah tienes razon nhaalclkiemr necesitas ser admin.. no habia pensado en eso.. se podria hacer mas pequeño tu codigo jeje , pero parece q funciona ping es una buena opcion para emular un sleep() pero para este Saludos!! Si, weno, la verdad es que el codigo es largo pork le puse un metodo para corregir errores. La parte del principio sirve para evitar que si un usuario tiene el formato de hora diferente del normal afecte al programa, podría hacer que no funcionara... Despues intenta ejecutar el comando AT y se produce un error (si eres Admin o no existe AT) lo intenta con el SCHTASKS (tambien fallará si eres Administrador) y utiliza la funcion PING para esperar los 20 minutos... Neox, he visto tus scripts y están bastante bien, hay algunos muy buenos...el de funcion SLEEP no lo prové pero por la pinta del codigo parece bueno... Saludos
|
|
« Última modificación: 8 Mayo 2007, 15:36 pm por nhaalclkiemr »
|
En línea
|
StasFodidoCrypter 1.0 - 100% (old) | StasFodidoCrypter 2.0 - 85% (deserted) | Fire AV/FW-Killer - 97% (deserted) | R-WlanXDecrypter 1.0- 100% |
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Hacer temporizador para relé
Electrónica
|
Meta
|
0
|
5,572
|
15 Enero 2011, 06:18 am
por Meta
|
|
|
Temporizador
Programación C/C++
|
Bledniss
|
4
|
5,248
|
29 Abril 2011, 03:39 am
por Destro-
|
|
|
Temporizador en C
Programación C/C++
|
PeKiN
|
2
|
5,720
|
9 Junio 2011, 21:51 pm
por PeKiN
|
|
|
temporizador
PHP
|
kakashi20
|
1
|
2,989
|
15 Marzo 2012, 19:31 pm
por #!drvy
|
|
|
Duda con temporizador en C++
« 1 2 »
Programación C/C++
|
SrCooper
|
17
|
14,070
|
7 Julio 2013, 12:29 pm
por SrCooper
|
|