2009-09-29 2 views
7

Я уже проверил This Question, но не смог найти то, что я ищу. Я запускаю Windows (клиент), а сервер - это старый сервер типа мэйнфреймов.Telnet automation/scripting

В принципе, мне нужно написать скрипт, код Python или что-то еще, чтобы отправить некоторые команды знаний на сервер через telnet, и предпочтительнее захватить вывод. Затем вернитесь, когда закончите.

Каков наилучший подход?

ответ

19

Есть соединения python library for telnet, которые читают и записывают из/в telnet-соединение.

Проверьте ссылку. У этого есть некоторые основные примеры того, что Вы ищете.

Вот пример по ссылке:

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() 

Он подключается к серверу Telnet. Отправляет ваши учетные данные, а затем выполняет команду unix ls. Затем выходит из сеанса и выводит все данные с сервера telnet.

+4

Просто к сведению, что на моем сервере, мне нужно добавить '\ r' вместо символа' \ n'. Потребовал мне время, чтобы отладить это. – Ayman

0

Я никогда не использовал его сам, но, возможно, pexpect - это то, что вам нужно?

"Pexpect может быть использован для автоматизации интерактивных приложений, таких как SSH, FTP, PASSWD, Telnet и т.д."

+0

PExpect не запускается на клиентах Windows. Это дает ошибку, что для нее нужна система UNIX. – Ayman

+1

Я должен внимательно прочитать вопросы, извините! :) – Kylotan

3

Возможно, вы также захотите рассмотреть Exscript. Это упрощает некоторые из простых задач, но для более сложного есть дополнительный уровень абстракции (Exscript - сам скриптовый язык). В любом случае - стоит проверить.

0

Эта ветка устарела, но я думал, что все равно буду идти вперед и публиковать. Существует прога, называемая AutoMate, которая, скорее всего, удовлетворит ваши потребности. Он работает в Windows и довольно прост в использовании.

Более подробная информация по автоматизации телнета - http://www.networkautomation.com/sales/terminal-emulation-automation/

Смежные вопросы