【Python:Telnet密码未通过使用pexpect的脚本获取】教程文章相关的互联网学习教程文章

python pexpect 学习与探索【代码】

pexpect是python交互模块,有两种使用方法,一种是函数:run另外一种是spawn类1.pexpect module 安装   pexpect属于第三方的,所以需要安装, 目前的版本是 3.3 下载地址 https://pypi.python.org/pypi/pexpect/  安装步骤:  tar -xzvf pexpect-3.3.tar.gz cd pexpect-3.3 python setup install (require root)但是 这个安装需要root权限,如果没有root权限在,还能使用吗?  答案是肯定的,你只需要把lib的路径...

Python学习——定义一个pexpect的ssh_login函数【代码】

1def ssh_login(ip, user="root", passwd=None, prompt="]#", port="22", log_file=None, raise_exception=True):2""" 3 Login remote host with ssh4 return pexpect.spawn5""" 6 cmd = "ssh %s@%s -p %s" % (user, ip, port)7 p = pexpect.spawn(cmd)8 p.logfile = open_log_file(log_file)910 Flag = True 11 index = p.expect(["[Pp]assword:", "(yes/no)", prompt, pexpect.EOF]) 12if ind...

python 使用pexpect实现自动交互示例【代码】

Pexpect 是一个用来启动子程序并对其进行自动控制的 Python 模块,它可以用来和像 ssh、ftp、passwd、telnet 等命令行程序进行自动交互。shell 命令expect使用 http://blog.51cto.com/superleedo/1931418安装pexpect打开 https://pypi.org/project/pexpect/#files下载 wget https://files.pythonhosted.org/packages/09/0e/75f0c093654988b8f17416afb80f7621bcf7d36bbd6afb4f823acdb4bcdc/pexpect-4.5.0.tar.gztar zxf pexpect-4...

Python安装使用命令行交互模块pexpect

Pexpect是一个纯Python模块,可以用来和ssh、ftp、passwd、telnet等命令行命令进行交互使用,在Linux系统下尤其好用,下面我们就来具体来看一下Python安装使用命令行交互模块pexpect的基础教程:一、安装1、安装easy_install工具wget http://peak.telecommunity.com/dist/ez_setup.pypython ez_setup.py 安装easy_install工具(这个脚本会自动去官网搜索下载并安装)python ez_setup.py -U setuptools升级easy_install工具2、安装pexpe...

Python安装使用命令行交互模块pexpect的基础教程

一、安装 1、安装easy_install工具wget http://peak.telecommunity.com/dist/ez_setup.py python ez_setup.py 安装easy_install工具(这个脚本会自动去官网搜索下载并安装)python ez_setup.py -U setuptools升级easy_install工具 2、安装pexpecteasy_install Pexpect 测试一下:[root@OMS python]# python Python 2.7.3rc1 (default, Nov 7 2012, 15:03:45) [GCC 4.1.2 20080704 (Red Hat 4.1.2-48)] on linux2 Type "help", "copy...

Python:Telnet密码未通过使用pexpect的脚本获取【代码】

我在使用pexpect运行telnet脚本时遇到问题.问题是它仅从脚本中获取用户名而不是从密码中获取.它使用password的值但未输入相同的值.import pexpect import sys,time ipaddr = "192.168.100.85" username = "usr" password = "Pass@123" telconn = pexpect.spawn("telnet " + ipaddr) telconn.expect(":") telconn.logfile=sys.stdout time.sleep(15) telconn.sendline(username + "\r") telconn.expect(":") telconn.sendline(passw...

python-通过pexpect发送命令时如何避免冗余?【代码】

我有一个python的pexpect代码,它在其中发送文件中列出的一些命令. 假设我将一些命令存储在名为commandbase的文件中ls -l /dev/ ls -l /home/ramana ls -l /home/ramana/xyz ls -l /home/ramana/xxx ls -l /home/ramana/xyz/abc ls -l /home/ramana/xxx/def ls -l /home/dir/等等. 在这里观察到,在我将dev和home作为变量之后.如果我再次在家中,ramana和dir将作为变量.如果进入ramana,则又有xyz和xxx.所以基本上它是形式ls -l /varia...

python-pexpect和ssh:如何在su-root -c之后格式化命令字符串【代码】

我正在尝试遍历服务器列表和密码来更改一组服务器上的sshd配置,以便我可以使用无密码的SSH密钥通过root登录/运行命令. 我可以在bash中轻松完成此操作,但是我正在尝试学习Python,并且(显然)希望放弃手动输入密码. 这是我想做的事:scp ~/.ssh/id_rsa.pub /etc/ssh/sshd_config USER@IP:/tmp/ssh -o StrictHostKeyChecking=no -t USER@IP "su - root -c \"chown root:root /tmp/id_rsa.pub; chmod 600 /tmp/id_rsa.pub; chown root:r...

为什么Python pexpect与此处的换行符不符合预期的提示【代码】

我试图从run.py执行client.py. client.py提示输入.我编写了一个简单的pexpect代码,但它与提示符不匹配并挂起. 这是我的代码 client.pyinput = raw_input("Please data, default [ /Anything ]:\n") if input == "Admin":print "Welcome Admin" else:print "Welcom Guest"run.pyimport pexpect child = pexpect.spawn ('python client.py') child.expect('Please data, default [ /Anything ]:\n') child.sendline ('anonymous')这是...

python – pexpect发送光标移动【代码】

如何使用pexpect发送上,下,左,右键等光标移动.下面的示例是自动化elinks,它使用向上/向下键选择页面上的不同链接.from pexpect import spawn child = spawn('elinks http://python.org') #what goes here to send down key child.interact()解决方法:怎么样使用转义序列up(^ [[A]或down(^ [[B]像这样.child.send("\033[A") # up child.send("\033[B") # down

Python pexpect:fdpexpect pyserial == timeout不起作用?【代码】

我想在串口上使用pexpect.我按照建议使用fdpexpect.但我注意到expect()不遵守超时.相反,EOF发生了.ser = serial.Serial(sys.argv[1], 9600) fd = fdpexpect.fdspawn(ser.fd) fd.send('%s\r' % username) i = fd.expect(['Password:', pexpect.TIMEOUT], timeout=30) if i == 0:fd.send('%s\r' % password) else:print 'Boom!'似乎不是捕获它们,而是几乎立即引发pexpect.exceptions.EOF.如果我将pexpect.EOF添加到匹配列表中,EOF将立...

python – pexpect的任何替代品?【代码】

我正在使用python pexpect编写一个脚本来在远程机器上执行另一个脚本.它在正常情况下工作正常,但如果远程脚本中有time.sleep,则会失败. 我想到远程机器,在后台启动脚本然后离开.这可能吗 ? 有人可以建议替代方案或让我知道如何解决这个问题?解决方法:你考虑过paramiko吗? 这是一个例子……#!/usr/bin/env python import paramikossh = paramiko.SSHClient() ssh.load_system_host_keys()ssh.connect(hostname='example.com', po...

python – 从pexpect捕获输出【代码】

我遇到了pexpect问题.我试图从tralics中获取输出,这些tralics读取乳胶方程并发出MathML表示,如下所示:1 ~/ % tralics --interactivemath This is tralics 2.14.5, a LaTeX to XML translator, running on tlocal Copyright INRIA/MIAOU/APICS/MARELLE 2002-2012, Jos\'e Grimm Licensed under the CeCILL Free Software Licensing Agreement Starting translation of file texput.tex. No configuration file. > $x+y=z$ <formula...

Pexpect简单的测试——一个 expect的python实现

Pexpect简单的测试——一个 expect的python实现 @for & ever 2010-07-03 Pexpect 是一个自动控制的 Python 模块,可以用来ssh、ftp、passwd、telnet 等命令行进行自动交互。 官方网站是 http://www.noah.org/ 通过它,可以实现类似 expect 的操作。 例如我们可以用它来写python脚本,实现批量对一系列(大量的、配置相同的)的linux服务器进行操作。 一、安装方式 以root用户依次执行如下命令: wget http://pexpect.sourcef...

python-在pexpect中捕获即将死去的进程【代码】

我正在写一些pexpect的东西,这些东西基本上是通过telnet发送命令的. 但是,我的telnet会话可能会死掉(由于网络问题,电缆被拔出等等). 我该如何初始化telnet会话,以便它死亡时可以捕获并告诉它重新连接,然后继续执行其所在的代码. 这可能吗?解决方法:恕我直言,使用当前维护的库(例如exscript或telnetlib)通常会更好,但是有效的方法是:import pexpect as pxcmds = ['cmd1', 'cmd2', 'cmd3'] retcode = -1 while (retcode<10):if (re...

TELNET - 相关标签