[Reto Batch] Get IP from DNS

Iniciado por BatchianoISpyxolo, 7 Mayo 2012, 09:25 AM

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

79137913

HOLA!!!

ALGUIEN paseme el Ping.exe, Tracert.exe, Sort.exe de algun win/xp/sp3/32bits

GRACIAS POR LEER!!!
"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

79137913                          *Shadow Scouts Team*

79137913

HOLA!!!

(sorry por el 2ble post, es para hacer bumping)

Si no me quieren pasar el ping.exe y los demas, pasenme la salida de
ping.exe www.google.com

GRACIAS POR LEER!!!
"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

79137913                          *Shadow Scouts Team*

BatchianoISpyxolo

Cita de: 79137913 en 10 Mayo 2012, 16:58 PM
HOLA!!!

(sorry por el 2ble post, es para hacer bumping)

Si no me quieren pasar el ping.exe y los demas, pasenme la salida de
ping.exe www.google.com

GRACIAS POR LEER!!!


Citar
C:\>ping www.google.com

Haciendo ping a www.l.google.com [173.194.34.17] con 32 bytes de datos:
Respuesta desde 173.194.34.17: bytes=32 tiempo=377ms TTL=51
Respuesta desde 173.194.34.17: bytes=32 tiempo=523ms TTL=51
Respuesta desde 173.194.34.17: bytes=32 tiempo=541ms TTL=51
Respuesta desde 173.194.34.17: bytes=32 tiempo=291ms TTL=51

Estadísticas de ping para 173.194.34.17:
    Paquetes: enviados = 4, recibidos = 4, perdidos = 0
    (0% perdidos),
Tiempos aproximados de ida y vuelta en milisegundos:
    Mínimo = 291ms, Máximo = 541ms, Media = 433ms
Puede que desees aprender a programar desde 0: www.espascal.es

79137913

HOLA!!!

Código (DOS) [Seleccionar]
@echo off
SETlocal enabledelayedexpansion
ping "%1" > a.txt
CLS
for /f "tokens=*" %%x in (a.txt) do (set N=!N!%%x)
del /s /q a.txt
CLS
SET NUM=0
:LOOP
call set CHAR=%%N:~%NUM%,1%%%
set /a NUM+=1
IF "%CHAR%"=="[" (SET /A IPSTART=%NUM%
GOTO LOOPB)
GOTO LOOP
:LOOPB
call set CHAR=%%N:~%NUM%,1%%%
set /a NUM+=1
IF "%CHAR%"=="]" (SET /A IPEND=%NUM%
GOTO IPTERMINADO)
GOTO LOOPB
:IPTERMINADO
SET /A AUX=%IPEND%-%IPSTART%-1
CALL SET IP=%%N:~%IPSTART%,%AUX%%%%
ECHO [IP]: %IP%
PAUSE


GRACIAS POR LEER!!!
"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

79137913                          *Shadow Scouts Team*

Binary_Death

Solución:


@Echo Off
if "%~1" EQU "" goto :eof
for /f "tokens=2 delims=[]" %%_ in (
'"ping %~1 -n 1"'
) do (echo: %%_)
exit /b


Pasa que, ahora que me fijo, viene a ser lo mismo que los otros códigos... Es que no se puede hacer distinto y mejor, tampoco  :xD

zikotik

#15
.

zikotik

Es lo más sencillo que se me ocurrió sin ser tan sinuoso con el FOR.

Código (dos) [Seleccionar]
@echo off
ping -n 1 %1 |find "%1">data.tmp
for /f "tokens=2 delims=[]" %%a in (data.tmp) do (
echo %%a
del data.tmp
)