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

- - Dernière réponse : cs_nitneuc
Messages postés
8
Date d'inscription
samedi 19 juin 2010
Statut
Membre
Dernière intervention
13 janvier 2016
- 23 juin 2015 à 23:14
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
Afficher la suite 

15 réponses

Meilleure réponse
3
Merci
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...

Dire « Merci » 3

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

CCM 62790 internautes nous ont dit merci ce mois-ci

3
Merci
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.

Dire « Merci » 3

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

CCM 62790 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
2
Merci
Bonjour,

Tu peux utiliser expect sous windows.

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

A+

Herve
Mellah2
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
1
Merci
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
1
Merci
ptete sans les "" ?
1
Merci
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
488
Date d'inscription
vendredi 16 avril 2004
Statut
Membre
Dernière intervention
15 mars 2009
156
1
Merci
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+
1
Merci
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 ?
0
Merci
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.
0
Merci
Bonjour,

j'ai le même problème que vous. Quelqu'un a t'il trouvé une solution ?
0
Merci
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
0
Merci
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
0
Merci
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!!!
OOoForum
Messages postés
3548
Date d'inscription
jeudi 20 mars 2008
Statut
Membre
Dernière intervention
2 décembre 2019
723 -
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.
> OOoForum
Messages postés
3548
Date d'inscription
jeudi 20 mars 2008
Statut
Membre
Dernière intervention
2 décembre 2019
-
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?!!!
0
Merci
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
7
0
Merci
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.
cs_nitneuc
Messages postés
8
Date d'inscription
samedi 19 juin 2010
Statut
Membre
Dernière intervention
13 janvier 2016
7 -
kitty -telnet pop.laposte.net 110 -cmd "c:\temp\lines.bat" -log fichier.log écrit le contenu de la session dans un fichier texte