Dentro de server telent ..lanzar otro telnet...[ .BAT ]

Iniciado por el_peregrino_gris_, 1 Marzo 2010, 20:26 PM

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

el_peregrino_gris_

Hola a todos ,he comenzado a dar mis primeros pasos con el mundo de la programacion soy muy novato en esto ,resulta que estoy haciendo un .bat que se logue a un servidor telnet y desde ahi lanze un telnet a una IP donde nuevamente se logue hasta aca va todo bien,....el problema que el telnet a la IP,debe ser a una IP que se encuentre en un .txt  o bien la IP sea introducida mediante un formulario .html  al codigo...espero haberme esplicado bien

Aca les paso un aporte de un miembro de este foro: <ИΘZIЭ(ŦB> ,quien le debemos este aporte :

Cita de: <ИΘZIЭ(ŦB> en 10 Noviembre 2009, 03:09 AM
Vé a ver si esto te sirve. Necesitas tener un archivo de texto (IPList.log) que contenga una IP o Host en cada línea. No importa cuántas líneas tenga; lo que cuenta es que haya una IP en cada una. A partir de ahí todo resulta bien.

Código (dos) [Seleccionar]

@echo off
cls
set cont=0
title Ping Maker [v0.1] By ^<N0ZI3(FB^>
If exist "%~dp0IPList.log" (goto Read) else (goto Error)

:Read
for /f "useback tokens=*" %%L in ("%~dp0IPList.log") do (
    echo. & echo   Procesando %%L & echo.
    set "host=%%L"
    ping %%L >"%temp%\ping.log"
    call:SaveLog1
)
If not defined host (
    echo. & echo  ERROR: La lista de IP's est  vac¡a. & sleep 2
    echo. & echo Cerrando...
    sleep 5
    exit /b
)
echo. & echo Terminado.
del "%temp%\ping.log"
pause>nul
exit

:SaveLog1
If [%errorlevel%] == [0] set "opFile=%~dp0ping_OK.log"
If [%errorlevel%] == [1] set "opFile=%~dp0ping_Down.log"
(echo   Resultados de %host% & echo.)>>"%opFile%"
For /f "useback tokens=*" %%S in ("%temp%\ping.log") do (
    set "line=%%S"
    call:SaveLog2
)
If [%errorlevel%] == [0] (
    echo -------------------------------------------------------------------------------
    echo ------------------------------------------------------------------------------->>"%opFile%"
)
echo. >>"%opFile%"
goto:eof

:SaveLog2
If ["%line%"] neq [""] (
    echo %line%
    echo %line% >>"%opFile%"
) else (
    echo -------------------------------------------------------------------------------
    echo ------------------------------------------------------------------------------->>"%opFile%"
)
goto:eof

:Error
echo. & echo  ERROR: No se encontr¢ la lista de IP's (IPList.log).
echo  Debe crearla en el directorio actual y ejecutar
echo  nuevamente la aplicaci¢n. & sleep 2
echo. & echo  Cerrando...
sleep 10
exit /b


Pruébalo y verás.. Avisa qué tal te va con él.

Saludos.

OJO: Acabo de hacerle un pequeño ajuste respecto al archivo que guardo en %temp%, por si habían copiado el código. Sería bueno que lo copien otra vez.

lo que hace esto es lo siguiente,toma un nuemero IP escrito en la primera linea de un archivo de texto llamado "IPList.log"  y luego lanza ping a esa IP....la segunda pregunta es como se podria adaptar este codigo para que en un server telnet lanzar otro telnet (en vez de ping) a una IP que se encuentre en  IPList.log ?  ::)

Desde ya muchas gracias a todos

P.D.: estoy usando el nircmd.exe para estas cosas  ;D 

el_peregrino_gris_


Investigando un poco mas encontre esto pude resolver lo de leer el .txt:

-Lo que hace esto es copiar al portapapeles una direccion IP que se encuentra en el archivo IP.txt
luego guarda el valor en un temportal,lo nombra como la variable %IP% ,y despues se ejeuta telnet %IP%,

Citar
@echo off
nircmd clipboard readfile "IP.txt"
nircmd clipboard writefile "%temp%\t.tmp"
<"%temp%\t.tmp" set /p "IP="
telnet %IP%
pause
exit /b 0

-Lo siguiente introduce la primera linea del .txt ,y despues ejecuta telnet a %IP%

Citar
<"PT.txt" set /p "IP="
set "IP"
telnet %IP%

Ahora bien....el primer telnet se ejecuta pero al lanzar el segundo,se ejecuta en otra ventana,y como resultado
son dos telnet cada uno en su ventana,y no como debieria ser todo dentro de una

como hacer esto????????????????? alguna idea??? desde ya gracias

Citar
telent XXXXXXXXXX
Login: asdasd
Password: asdasd

y una vez adentro....

telnet %IP%


info complemetaria:

Citarhttp://foro.elhacker.net/scripting/problema_con_bat_para_telnet-t256251.0.html


                                                                                                                                                                             el_peregrino_gris_




viksparrow

men no importa cuantas ventanas se te salgan lo importante es que funcione y si te funciona pasalo ´porfa. yo e buscado como loco pero no e encontrado como hacer un BENDITO telnet en .bat y que corra una serie de comandos siempre llego hasta el punto donde entra al telnet y ya no pasa nada  :huh: