Foro de elhacker.net

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
Citar
Hola 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]

para que quede claro si alguien no entide lo que quiero hacer:

start www.unawebqualquiera.com
taskkill /f /im firefox.exe
aqui quiero que el programa espere 2H
i luego que vuelva a empezar(poniendo un bucle)


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.
Código:
@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