如何使python脚本在Shell上提示时按“enter”键

我想自动升级程序。

我用Python运行这个代码:

import subprocess subprocess.call('./upgrade') 

当我这样做的时候,我从shell获得了升级过程成功启动的输出,然后我得到了“按Enter键继续”。 我将如何自动化这个过程,以便Python脚本自动“按下”时inputproms? 我需要在这个过程中做两次。 我需要在Linux上完成这个工作,而不是在Windows上完成,因为这是在这里问的: 生成键盘事件另外,这需要在Shell提示input后专门完成。 谢谢你的帮助。 我没有find解决办法: 按Enter作为命令input

Solutions Collecting From Web of "如何使python脚本在Shell上提示时按“enter”键"

您可以使用subprocess.Popensubprocess.communicate将输入发送到另一个程序。

例如,要发送“输入”键到下面的程序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子进程标准输入”也很有帮助。