[英]How to make python script press 'enter' when prompted on Shell
我想自动升级程序。
我用Python运行这段代码:
import subprocess
subprocess.call('./upgrade')
当我这样做时,我从shell获得升级程序成功启动的输出,然后我得到'按Enter继续'。 我如何自动化这个过程,以便python脚本在发布时自动“按下”输入? 我需要在手术过程中做两次。 我需要在Linux上完成此操作,而不是Windows,因为它在这里被要求: 生成键盘事件此外,这需要在Shell提示输入后专门完成。 谢谢你的帮助。 我在这里找不到解决方案: 按enter键作为命令输入
您可以使用subprocess.Popen
和subprocess.communicate
将输入发送到另一个程序。
例如,要将“enter”键发送到以下程序test_enter.py
:
print "press enter..."
raw_input()
print "yay!"
您可以执行以下操作:
from subprocess import Popen, PIPE
p = Popen(['python test_enter.py'], stdin=PIPE, shell=True)
p.communicate(input='\n')
您可能会发现“我如何写入python子进程'stdin”的答案也很有帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.