Telnet自动化/脚本[关闭]

Posted

技术标签:

【中文标题】Telnet自动化/脚本[关闭]【英文标题】:Telnet automation / scripting [closed] 【发布时间】:2010-12-02 06:23:47 【问题描述】:

我已经检查了this question,但找不到我要找的东西。我正在运行 Windows(客户端),服务器是旧的大型机类型服务器。

基本上我需要编写一个脚本、python 代码或其他任何东西,通过 telnet 将一些已知命令发送到服务器,并最好捕获输出。完成后返回。

最好的方法是什么?

【问题讨论】:

【参考方案1】:

有一个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()

它连接到远程登录服务器。发送您的登录凭据,然后执行 unix 命令ls。然后退出会话并打印 telnet 服务器的所有输出。

【讨论】:

请注意,在我的服务器上,我需要添加 \r 而不是 \n。我花了一些时间来调试它。【参考方案2】:

您也可以考虑Exscript。它简化了一些简单的任务,但对于更复杂的任务,还有额外的抽象级别(Exscript 本身就是一种脚本语言)。无论哪种方式 - 都值得一试。

【讨论】:

【参考方案3】:

我自己从未使用过,但也许pexpect 是您需要的?

"Pexpect 可用于自动化 交互式应用程序,例如 ssh, ftp、passwd、telnet等”

【讨论】:

PExpect 不在 Windows 客户端上运行。它给出了一个错误,它需要一个类似 UNIX 的系统。 我应该更仔细地阅读问题,对不起! :)

以上是关于Telnet自动化/脚本[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

期望脚本自动进行 telnet 登录

linux通过shell脚本实现telnet交互式自动化

自动退出 Telnet 命令返回提示,无需人工干预 ^] quit 关闭退出代码 1

Telnet/Send/Expect - 自动从远程主机拉取日志

SecureCRT远程登录Unix主机时(telnet和ssh)能不能自动输入账号和密码,然后怎样让其自动执行脚本,谢谢啦

输入两个登录密码的Python telnet脚本?