elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a la Factorización De Semiprimos (RSA)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Ping en .bat
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ping en .bat  (Leído 3,324 veces)
ElmoN02

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Ping en .bat
« en: 22 Junio 2010, 19:49 pm »

Hola muchachos.

   Soy nuevo en el foro y quisiera hacer una consulta, Es posible que en el .bat al realizar ping y agregar al principio un comentario de horario?. Ejemplo:

Haciendo ping a google.com [72.14.253.104] con 32 bytes de datos:

Respuesta desde 72.14.253.104: bytes=32 tiempo=105ms TTL=50
Respuesta desde 72.14.253.104: bytes=32 tiempo=104ms TTL=49
Respuesta desde 72.14.253.104: bytes=32 tiempo=101ms TTL=50
Respuesta desde 72.14.253.104: bytes=32 tiempo=104ms TTL=50

Que quede asi en un TXT:

[12:40:2] Respuesta desde 72.14.253.104: bytes=32 tiempo=105ms TTL=50
[12:40:3] Respuesta desde 72.14.253.104: bytes=32 tiempo=105ms TTL=50
[12:40:4] Respuesta desde 72.14.253.104: bytes=32 tiempo=105ms TTL=50

Gracias

Saludos.


En línea

leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 3.069


/^$/


Ver Perfil WWW
Re: Ping en .bat
« Respuesta #1 en: 22 Junio 2010, 20:20 pm »

Lo que podemos hacer es esto:

Código
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. if exist "file.txt" (del /f /q "file.txt")
  4. for /f "tokens=*" %%_ in ('ping google.com') do (
  5. echo !time! % style="color: #448888;">%_ | findstr /r /i "respuesta" >> "file.txt"
  6. )
  7. type "file.txt"
  8. set /p "=END";
  9. exit /b 0

Código:
C:\>code
13:19:03.29 Respuesta desde 66.102.7.104: bytes=32 tiempo=55ms TTL=58
13:19:03.32 Respuesta desde 66.102.7.104: bytes=32 tiempo=56ms TTL=58
13:19:03.35 Respuesta desde 66.102.7.104: bytes=32 tiempo=56ms TTL=58
13:19:03.39 Respuesta desde 66.102.7.104: bytes=32 tiempo=67ms TTL=58
ENDcode

C:\>code
13:19:09.71 Respuesta desde 66.102.7.99: bytes=32 tiempo=53ms TTL=58
13:19:09.75 Respuesta desde 66.102.7.99: bytes=32 tiempo=54ms TTL=58
13:19:09.78 Respuesta desde 66.102.7.99: bytes=32 tiempo=53ms TTL=58
13:19:09.81 Respuesta desde 66.102.7.99: bytes=32 tiempo=53ms TTL=58
END

C:\>code
13:19:16.25 Respuesta desde 66.102.7.104: bytes=32 tiempo=56ms TTL=58
13:19:16.26 Respuesta desde 66.102.7.104: bytes=32 tiempo=54ms TTL=58
13:19:16.29 Respuesta desde 66.102.7.104: bytes=32 tiempo=52ms TTL=58
13:19:16.32 Respuesta desde 66.102.7.104: bytes=32 tiempo=55ms TTL=58
ENDcode

C:\>code
13:19:22.64 Respuesta desde 66.102.7.99: bytes=32 tiempo=53ms TTL=58
13:19:22.67 Respuesta desde 66.102.7.99: bytes=32 tiempo=54ms TTL=58
13:19:22.70 Respuesta desde 66.102.7.99: bytes=32 tiempo=55ms TTL=58
13:19:22.71 Respuesta desde 66.102.7.99: bytes=32 tiempo=54ms TTL=58
END

Cualquier duda aquí estamos.

Pd: ¿Con qué propósito haces los ping s?


En línea

Código
  1. (( 1 / 0 )) &> /dev/null || {
  2. echo -e "stderrrrrrrrrrrrrrrrrrr";
  3. }
  4.  
http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com
FranciskoAsdf

Desconectado Desconectado

Mensajes: 231


Ni bueno, ni malo. Solo nada.


Ver Perfil WWW
Re: Ping en .bat
« Respuesta #2 en: 23 Junio 2010, 03:05 am »

Así queda  como él quiere:

Código
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. Set "NoSegs=%Time%"
  4. Set "tiempo=%NoSegs:~0,5%"
  5. if exist "file.txt" (del /f /q "file.txt")
  6. for /f "tokens=*" %%_ in ('ping google.com') do (
  7. echo [!tiempo!] % style="color: #448888;">%_ | findstr /r /i "respuesta" >> "file.txt"
  8. )
  9. type "file.txt"
  10. set /p "=END";
  11. exit /b 0
  12.  

Salida:

Código:
[21:04] Respuesta desde 74.125.67.106: bytes=32 tiempo=169ms TTL=51
[21:04] Respuesta desde 74.125.67.106: bytes=32 tiempo=167ms TTL=51
[21:04] Respuesta desde 74.125.67.106: bytes=32 tiempo=168ms TTL=50
[21:04] Respuesta desde 74.125.67.106: bytes=32 tiempo=166ms TTL=51
END

Agregas las variables NoSegs y tiempo para quitar los segundos y las milésimas de la hora, y se agregan los corchetes para que se vea como tu quieres :)


Saludos.-
En línea

Asdf debería ser algún tipo de función.
leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 3.069


/^$/


Ver Perfil WWW
Re: Ping en .bat
« Respuesta #3 en: 23 Junio 2010, 07:50 am »

Así queda  como él quiere:

Código
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. Set "NoSegs=%Time%"
  4. Set "tiempo=%NoSegs:~0,5%"
  5. if exist "file.txt" (del /f /q "file.txt")
  6. for /f "tokens=*" %%_ in ('ping google.com') do (
  7. echo [!tiempo!] % style="color: #448888;">%_ | findstr /r /i "respuesta" >> "file.txt"
  8. )
  9. type "file.txt"
  10. set /p "=END";
  11. exit /b 0
  12.  

Salida:

Código:
[21:04] Respuesta desde 74.125.67.106: bytes=32 tiempo=169ms TTL=51
[21:04] Respuesta desde 74.125.67.106: bytes=32 tiempo=167ms TTL=51
[21:04] Respuesta desde 74.125.67.106: bytes=32 tiempo=168ms TTL=50
[21:04] Respuesta desde 74.125.67.106: bytes=32 tiempo=166ms TTL=51
END

Agregas las variables NoSegs y tiempo para quitar los segundos y las milésimas de la hora, y se agregan los corchetes para que se vea como tu quieres :)


Saludos.-

Pero si es exactamente igual a mi código.  :P
En línea

Código
  1. (( 1 / 0 )) &> /dev/null || {
  2. echo -e "stderrrrrrrrrrrrrrrrrrr";
  3. }
  4.  
http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines