擅长:python、mysql、java
<p>如果你在窗户上,那么你将在很长一段时间内与一场艰苦的战斗,我为你所承受的痛苦感到抱歉。但是,如果您在Linux上,您可以使用<a href="https://pexpect.readthedocs.io/en/stable/" rel="nofollow noreferrer">pexpect</a>模块。Pexpect允许您生成一个后台子进程,您可以与它执行双向通信。这对于所有类型的系统自动化都很有用,但是ssh是一个非常常见的用例。在</p>
<pre><code>import pexpect
child = pexpect.spawn('python3 test.py')
message = 'hello world'
while True:
try:
child.expect(message)
except pexpect.exceptions.EOF:
break
input('child sent: "%s"\nHit enter to continue: ' %
(message + child.before.decode()))
print('reached end of file!')
</code></pre>
<p>我发现创建一个类来处理诸如ssh连接这样复杂的事情是非常有用的,但是如果您的用例足够简单,那么这可能是不合适的或不必要的。路途预期之前类型为bytes,并且忽略了您正在搜索的模式可能会很尴尬,因此创建一个至少为您处理此问题的函数可能是有意义的。在</p>
^{pr2}$
<p>如果要向子进程发送消息,可以使用子级.sendline(行)。有关更多详细信息,请查看我链接的文档。在</p>
<p>我希望我能帮忙!在</p>