【问题标题】:pexpect interact() duplicated bash outputpexpect interact() 重复 bash 输出
【发布时间】:2017-03-07 12:37:03
【问题描述】:

大家好!目前我正在尝试创建一个交互式 python 环境来调用 bash 脚本 - 使用 pexpect。为了解释的目的,让我们看看下面的代码和我相应的输出。它应该只产生一个 bash 和 echo foobar 的实例。

import pexpect
p = pexpect.spawn("/bin/bash -i -c 'echo foobar'")
p.interact()

这给了我输出

foobar
foobar

这(至少对我而言)不是预期的输出,因为它似乎重复了输出行。这个问题更进一步:一些脚本调用用空行淹没了终端,这是非常不幸的,因为我想在屏幕上显示最后一次调用的输出。我想这个问题的原因与我上面给出的例子有关。你可能认为我不需要使用 p.interact()。对于这个例子,这当然是正确的,但我的真实脚本需要是通用的,并且用户交互是可以预期的。
我希望有人可以帮助我 - 在此先感谢。

【问题讨论】:

    标签: python pexpect


    【解决方案1】:

    我自己找到了解决方案。好像 pexpect 模块已经过时了。

    sudo pip install --upgrade pexpect
    

    解决了问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-09-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-08-18
      • 2022-12-22
      • 2013-02-23
      • 1970-01-01
      相关资源
      最近更新 更多