Passer un script avec telnet a partir de DOS [Fermé]

Signaler
-
Messages postés
8
Date d'inscription
samedi 19 juin 2010
Statut
Membre
Dernière intervention
13 janvier 2016
-
Bonjour a tous,

Je travaille actuellement sur un fichier .bat dont le but est d automatiser un process. Le debut du script consiste a faire des set de plusieurs variables. Puis je dois me connecter a une cible et lancer une connection telnet puis faire 3 command a l interieur de telnet :

< cd "prod/bin"

<putenv("OSAGENT_PORT=999")

<load.cmd

Mon PC est un P3 800 qui tourne sous Win NT 4.0
La cible est un P3 650 tournant sous VxWorks

J ai trouve par mes propres moyens que pour lancer telnet et executer le script Toto automatiquement, il fallait utiliser la commande suivante dans la fenetre DOS:

telnet 3.233.12.14 -s toto.txt

Cependant, lorsque je tape la commande avec ds toto.txt les 3 commandes citees ci dessus, cela ne marche pas et j ai eu beau retourner la question, je suis perdu ...

Je vous remercie a l avance pour votre aide, meme si vous n avez que des pistes je suis preneur.

Encore merci a vous tous


Jojo

15 réponses

OK après avoir posé moi-même la même queqtion, je crois avoir deux réponses qui fonctionnent bien:
1/ avec un script VBS on peut passer des commandes à Telnet... Ca semble bien marcherpour l'envoi de commandes mais je n'ai pas pu recevoir les réponses (ex: je peux demander de lire des messages POP mais ils s'affichent à l'écran et je n'ai pas trouvé commente récupérer le contenu des messages... pas ex pour le coller dans un fichier)
Bref... pour envoyer la lecture des messages le script est ci dessous :
set wsh=wscript.createobject("wscript.shell")
wsh.run "telnet.exe -f telnet.log pop.free.fr 110"
wscript.sleep 1000
wsh.sendkeys "user toto~"
wscript.sleep 1000
wsh.sendkeys "pass motdepasse~"
wscript.sleep 1000
wsh.sendkeys "list~"
wscript.sleep 1000
wsh.sendkeys "retr 1~"
wscript.sleep 1000
wsh.sendkeys "quit~"
wscript.sleep 1000
wsh.sendkeys "~"
wscript.sleep 1000

Vous copiez le texte ci-dessus dans un fichiers x.vbs sur votre bureau et en cliquant dessus ça lit la boite TOTO chez FREE avec le mot de passe MOTDEPASSE
et ensuite ça charge et affiche le premier message... si il existe !

2/ comme cette solution ne me plaisait pas beaucoup, j'ai fini par développer un petit "truc" avec DELPHI qui va tip-top !
Il reçois les messages, les analyse et en tire quelques info à placer en base de données...
Si ça intéresse quelqu'un passez moi un petit mot sur RIPPLINGER.Christian@online.fr et je vous fais passer le source... si vous n'avez pas DELPHI je vous donnerai directement l'exécutable.
Quant-à la réponse pour JOFFREY... ce n'est pas du POP mais je crois que l'acceès TELNET doit être à peu près aussi simple depuis DELPHI... donne-moi un peu plus d'info (du style un exemple de site où tu veux passer des commandes) pour que j'essaye et je te dirai comment faire...
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 76687 internautes nous ont dit merci ce mois-ci

tu peux utiliser TERATERM Macro (gratuit sur le net) avec les commandes suivantes:

connect 'nom du serveur ou @IP serveur'
wait 'login:'
sendln 'login de connection telnet'

wait 'Password:'
sendln 'mot de pass'
et apres meme syntaxe pour tes autres commandes ...

A+
REXAS.
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 76687 internautes nous ont dit merci ce mois-ci

Bonjour,
J'ai installé tera term.
Mais je ne trouve pas de tuto pour faire des macro.
As tu un tuto ou exemple de macro plus complexe (var,argument etc ..)

Ou un autre logiciel qui pourrais me permettre de faire la meme choase (macro en telnet et port com)

Merci d'avance
Bonjour,

Tu peux utiliser expect sous windows.

http://expect.nist.gov/#windows

A+

Herve
Messages postés
2
Date d'inscription
samedi 5 août 2006
Statut
Membre
Dernière intervention
5 août 2006
3
Trouve ci-après la commande en ligne et un exemple de script.


C:\Program Files\Expect-5.21\bin>expect.exe expect_run_telnet @IP commande

Script:
# Program Name: expect_run_telnet
# Date: 08/05/2006
# Intent: This "expect" program is a wrapper to automate sending commands
# through the telnet interface.
#
# Usage: expect_run_telnet <Ipaddr> <command>


proc telnetLogin {user passwd prompt} {
expect {}
send "$user\r"
expect "Password:"
send "$passwd\r"
expect $prompt
return "0"
}

#
# main
#

# Exit if not enough args supplied
if {$argc != 2} {
puts "\nincorrect number of arguments supplied"
puts " \nusage: $argv0 <Ipaddr> <cmd>"
puts "\nexiting ..."
exit
}

set Ipaddr [lindex $argv 0]
set cmd [lindex $argv 1]

# login parameters
set suser admin
set spasswd password
set sprompt >

set timeout 100
spawn telnet $Ipaddr

set sw_spid $spawn_id

# exit since it was not possible to connect.
catch {telnetLogin $suser $spasswd $sprompt} code
if {$code != 0} {
puts "unable to access $Ipaddr"
exit
}

set spawn_id $sw_spid

# send the command
send "$cmd\r"
expect $sprompt
puts "\n"


Herve
SI vous plait aidez moi, je suis vraiment en galere et meme si vous pensez que votre idee est pourrie donnez la qd meme !! J accepte tout !!!

Encore merci d avance
ptete sans les "" ?
Essaie avec telnet 3.233.12.14 <toto.txt
j'ai essayé pour l'envoie d'un mail mais rien n'y fait. Pourtant mon fichier d'entrée est bon, je l'ai testé manuellement en mode interactif ligne par ligne.
telnet smtp.truc.com 25 < commandsend.txt
Des idées ?
Messages postés
486
Date d'inscription
vendredi 16 avril 2004
Statut
Membre
Dernière intervention
15 mars 2009
158
salut,
je sais c'est pas terrible, mais bon
j'edite le fichier.bat (avec le bloc notes), je fais sélectionner tout/copier,et dans telnet je fais clic de droite coller dans la console.
ça évite déjà de tout taper une deuxième fois...

A+
Bonjour... j'arrive peut être un peu tard mais j'ai le même problème que toi...
Je cherche à automatiser la réception de messages pop pour
les traiter par un batch sous DOS.
La réception ne pose pas de problème "à la main" mais impossible d'utiliser un SCRIPT ou BATCH avec Telnet...
As tu trouvé une solution sympa ?
Merci bien, j ai essaye mais cela ne marche pas, cependant grace a vous j ai trouve une piste je pense pouvoir faire passer un script VBA avec la commande et ca doit normalement marcher ....

Si qqun connait un bon site sur le VBA avec tuto et tout je suis partant
Tu veux des cours sur le VBA... Essaies : www.developpez.com

Tu devrai trouver ton bonheur.
Bonjour,

j'ai le même problème que vous. Quelqu'un a t'il trouvé une solution ?
bonjour à tous j'ai besoin de votre aide , j'ai réalisé un logiciel sous delphi et c bon maintenant j'ai besoin de quelqu'un qui m'aide d'avoir l'exécutable dans une autre machine sans aide de la base de données, svp aidez moi, car je vais le présenter il marche bien mais le problème que je vais le présenter dans une autre machine et il ne faut pas que j'installe le delphi sur cette machine et aussi il faut qu'il soit dépend de la bases de données.
merci d'avance
Salut je voudrai bien savoir coment se connecter à un serveur via telnet, avec un poste connecté à l'internet par un reseau local.
Messages postés
1
Date d'inscription
mercredi 3 septembre 2008
Statut
Membre
Dernière intervention
3 septembre 2008

slt tlmnd.
je suis en stage et je doit configurer un accès telnet: login, psswd et tt sa quoi mais c'est ma premiere fois de toucher à telnet! please help!!!
Messages postés
3745
Date d'inscription
jeudi 20 mars 2008
Statut
Membre
Dernière intervention
21 novembre 2020
923
Quel est le rapport avec le problème exposé en 2003 ?

TelNet est de toute façon un protocole non sécurisé, il faut passer par SSH.
>
Messages postés
3745
Date d'inscription
jeudi 20 mars 2008
Statut
Membre
Dernière intervention
21 novembre 2020

le rapport est telnet. c'est le fil rouge renvoyé par google... un fil rouge que le lecteur ne lit pas ou ne comprend pas (c'est au choix).
Quant au "de toute façon", je ne comprend pas cette réaction à l'emporte-pièce pas plus que cette mode du tout-sécurisé. J'ai dans mon architecture certains processus où telnet est utilisé et ça ne cause aucun problème.
Un échange doit être protégé quand il circule dans l'espace public, mais tant que tu restes confiné dans un espace privé, pourquoi te compliquer la vie à le sécuriser ?
Faudrait-il tout sécuriser ? https ? pops ? smtps ? echos ? calltos ? menfins ?
Une solution plus longue mais plus efficace serait d'apprendre aux gens à réfléchir, à se poser les bonnes questions : ce flux doit-il être crypté ? pourquoi diable ce telnet refuse-t-il mon fichier en entrée ?

Au fait... pourquoi telnet refuse-t-il un fichier en entrée ?
C'est vrai ça... pourquoi?!!!
Utilisez Kitty, permet de faire une connexion telnet en automatique, et de lancer les commandes que l'on veux.....
Messages postés
8
Date d'inscription
samedi 19 juin 2010
Statut
Membre
Dernière intervention
13 janvier 2016
8
Voici une solution avec Putty ou Kitty :

kitty -telnet pop.laposte.net 110 -cmd "c:\temp\lines.bat"

Le fichier "c:\temp\lines.bat" contenant les commandes POP.

Voilà, en espérant aider ceux qui se retrouveraient comme moi sur ce topic.
Messages postés
8
Date d'inscription
samedi 19 juin 2010
Statut
Membre
Dernière intervention
13 janvier 2016
8
kitty -telnet pop.laposte.net 110 -cmd "c:\temp\lines.bat" -log fichier.log écrit le contenu de la session dans un fichier texte