Test Foro de elhacker.net SMF 2.1

Programación => Scripting => Mensaje iniciado por: darkirax en 16 Diciembre 2008, 15:33 PM

Título: ayuda cuenta atras en batch
Publicado por: darkirax en 16 Diciembre 2008, 15:33 PM
Hola he visto que hay un tema abierto parecido pero no soluciona mi duda por eso abro uno de nuevo. Mi problema es que quiero hacer un pequeño batch que me habra una url la cierre espere x minutos i vuelva a empezar. Lo de abrir cerrar i el bucle esta claro pero no se como se tiene que hacer para que espere x minutos ( o segundos).

Alguien me podria explicar?

gracias
Título: Re: ayuda cuenta atras en batch
Publicado por: Novlucker en 16 Diciembre 2008, 15:38 PM
CitarHola he visto que hay un tema abierto parecido pero no soluciona mi duda por eso abro uno de nuevo
Creo que no has revisado bien  :rolleyes:

Librería de funciones y scripts BATCH (http://foro.elhacker.net/scripting/libreria_de_funciones_y_scripts_batch_actualizado_260507-t163184.0.html)<---click
En la misma página tienes dos funciones SLEEP  :P

Saludos
Título: Re: ayuda cuenta atras en batch
Publicado por: darkirax en 16 Diciembre 2008, 15:44 PM
jaja gracias justo ahora lo acabo de encontrar

pero alguien me podria poner un ejempo de como utlizar esta funcion??

:sleep
:: Sintaxis:
:: call:sleep [-s/-m]
Título: Re: ayuda cuenta atras en batch
Publicado por: Novlucker en 16 Diciembre 2008, 16:06 PM
Es una función que debes de incluír en tu code, luego le pasas como parámetro el -s y el número de segundos a esperar.

Si lo que buscas es parar la ejecución durante dos horas te recomiendo agregar una tarea programada con el comando AT, un bucle durante ese tiempo consume muchos recursos  :-\

Saludos
Título: Re: ayuda cuenta atras en batch
Publicado por: leogtz en 16 Diciembre 2008, 17:58 PM
Aqui esta un ejemplo de uso de la funcion, tienes que entender como trabaja el call.
@echo off
call :sleep 4
rem Aqui va tu demas codigo!
msg * Adios

:SLEEP
if "%1"=="" (goto :eof)
set /a limit=0
set /a limit=%1
if %limit% LEQ 0 (goto :eof)
set /a cont=0
:time
set mirror1=%time:~-4,1%
:increment
set mirror2=%time:~-4,1%
if not %mirror2%==%mirror1% (goto count)
goto increment
:count
set /a cont +=1
if "%cont%"=="%limit%" (goto :eof)
goto time
goto :eof
Título: Re: ayuda cuenta atras en batch
Publicado por: darkirax en 17 Diciembre 2008, 18:51 PM
bueno he provado otra manera de hacer qu que espere un tiempo antes de continuar pero no se porque no me funciona correctamente. el codigo es:

:BUCLE
start www.webqualquiera.com
ping -w 10000 127.0.0.1>nul
taskkill /f /im firefox.exe
goto BUCLE

si no lo entendi mal esto tendria de eperar 10 segundos antes de cerrar el firefox no?
alguna idea de porque no espera los 10 segundos?(uso vista no se si esto influye)
Título: Re: ayuda cuenta atras en batch
Publicado por: corax en 19 Diciembre 2008, 16:44 PM
En todo caso sería:

ping -n 10 localhost>nul

Creo yo, vamos...



De todas maneras lo mejor que puedes hacer es usar el código de Leo, ya que no depende de un programa externo como es el ping.exe