37得票8回答
Python如何读取pexpect子进程的输出?

child = pexpect.spawn ('/bin/bash') child.sendline('ls') print(child.readline()) print child.before, child.after 使用这段代码,我在输出中得到的只有ls ls 但当我的代码是ch...

7得票3回答
pexpect setecho不起作用

我正在尝试使用pexpect telnet到Cisco路由器并发送命令。虽然setecho已经设置为False,但是sendline()的输出仍会重复。以下是代码: ''' Created on Nov 19, 2012 @author: Amit Barik ''' import pe...

8得票2回答
如何确定由pexpect发送的命令的退出状态码

在下面的代码片段中,我该如何找到make命令的退出码?具体来说,我需要知道make是否失败或成功。感谢任何意见。 process = pexpect.spawn("/bin/bash") process.expect("make\r")

13得票2回答
Python Pexpect 清除或刷新行

我试图在从未知状态中恢复后清除行上的任何字符,因为在某些情况下,它们会包含我将来在 expect 方法调用中使用的提示和其他关键字。我尝试了多种方法,但结果各异,因为我不断遇到非预期的行为。 发现了一些意外行为(使用带有 Python 2.7.9 的 pexpect V3.3): 在执行...

32得票5回答
Python subprocess通信中的多个输入和输出

我需要做类似于这篇文章的事情,但是我需要创建一个可以多次输入和输出的子进程。那篇文章的被接受的答案有很好的代码...... from subprocess import Popen, PIPE, STDOUT p = Popen(['grep', 'f'], stdout=PIPE, st...

13得票4回答
导入错误:找不到名为pexpect的模块。

我正在使用Fabric,并希望使用fexpect。我有以下Python脚本:from ilogue.fexpect import expect, expecting, run (...) def install_postgresql(profile): print("!!! Install...

7得票2回答
Python Pexpect发送控制键字符

我正在使用Python的pexpect模块自动化任务,我需要帮助找出在sendcontrol中使用的关键字符。如何发送控制键ENTER?以及以后如何找到关键字符? 这是我正在处理的代码。 #!/usr/bin/env python import pexpect id = pexpect...

26得票3回答
在类似终端的近实时环境中运行命令并分别获取其标准输出和标准错误输出。

我正在尝试在Python中找到一种运行其他程序的方法,满足以下条件: 被运行程序的标准输出(stdout)和标准错误(stderr)可以分别记录。 被运行程序的标准输出(stdout)和标准错误(stderr)可以几乎实时地查看,这样如果子进程挂起,用户就可以看到。(即我们不等待执行完成才将...

19得票3回答
如何让Fabric自动化地(而不是用户交互式地)与shell命令进行交互?可以结合使用pexpect吗?

寻求的意思是让Fabric自动与shell命令交互(而不仅仅是请求密码,还包括在没有"stdin/interactive override"的情况下请求用户输入,比如apt-get install -y)。 这个问题以及这些Fabric文档表明,Fabric只能将交互性推回运行Fabric程...

11得票3回答
Pexpect和PyCharm - Inappropriate ioctl for device

我正在尝试运行一个基本的Pexpect脚本:import pexpect ftp_process = pexpect.spawn('ftp') ftp_process.interact() 当代码直接从终端运行时,代码按预期工作。如果我使用PyCharm的run/debug运行代码,则会出现以...