Automatisation / scriptage Telnet

J’ai déjà vérifié cette question mais je n’ai pas trouvé ce que je cherchais. J’utilise Windows (le client) et le serveur est un serveur de type mainframe hérité.

Fondamentalement, je dois écrire un script, du code python ou autre, pour envoyer des commandes connues au serveur via telnet, et mieux vaut capturer la sortie. Puis revenez une fois terminé.

Quelle est la meilleure approche?

Il existe une bibliothèque python pour les connexions telnet qui lit et écrit depuis / vers une connexion telnet.

Vérifiez le lien. Il contient des exemples de base de ce que vous recherchez.

Voici un exemple du lien:

import getpass import sys import telnetlib HOST = "localhost" user = raw_input("Enter your remote account: ") password = getpass.getpass() tn = telnetlib.Telnet(HOST) tn.read_until("login: ") tn.write(user + "\n") if password: tn.read_until("Password: ") tn.write(password + "\n") tn.write("ls\n") tn.write("exit\n") print tn.read_all() 

Il se connecte à un serveur telnet. Envoie vos identifiants de connexion puis exécute la commande unix ls . Puis quitte la session et imprime toute la sortie du serveur telnet.

Vous voudrez peut-être également considérer Exscript . Cela simplifie certaines tâches faciles, mais pour plus compliqué, il existe un niveau d’abstraction supplémentaire (Exscript est un langage de script en soi). De toute façon – vaut la peine de vérifier.

Je ne l’ai jamais utilisé moi-même, mais peut-être que pexpect est ce dont vous avez besoin?

“Pexpect peut être utilisé pour automatiser des applications interactives telles que ssh, ftp, passwd, telnet, etc.”

Ce fil est vieux mais je pensais aller de l’avant quand même. Il existe un prog appelé AutoMate qui conviendrait très bien à vos besoins. Il fonctionne sous Windows et est assez facile à utiliser.

Plus d’infos sur l’automatisation de telnet – http://www.networkautomation.com/sales/terminal-emulation-automation/