当前位置: 首页 > 面试题库 >

在Shell上提示时如何使python脚本按'enter'

西门振
2023-03-14
问题内容

我想自动升级程序。

我在Python中运行以下代码:

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

当我这样做时,我从外壳程序获得升级程序已成功启动的输出,然后得到“按Enter继续”。我将如何自动执行此过程,以便在提示时python脚本自动“按”回车?我需要在程序执行两次。我需要在Linux而不是Windows上完成此操作,因为在这里它被询问:
生成键盘事件 另外,这需要在Shell提示输入Enter之后专门完成。谢谢你的帮助。我在这里找不到解决方案:
按Enter作为命令输入


问题答案:

您可以使用subprocess.Popensubprocess.communicate将输入发送到另一个html" target="_blank">程序。

例如,将“ 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”的答案也很有帮助。



 类似资料:
  • 问题内容: 我想在shell脚本中暂停输入,并提示用户选择。 标准,或类型问题。 如何在典型的bash提示中完成此操作? 问题答案: 该命令是在shell提示符下获取用户输入的最简单,使用最广泛的方法。演示其用法的最佳方法是一个简单的演示: 史蒂芬·休伊格(StevenHuwig)指出的另一种方法是Bash的命令。这是使用的相同示例: 随着你并不需要净化输入-它显示可用的选项,你键入相应的你的选择

  • 问题内容: 我正在编写一个简单的shell脚本,该脚本会更改网络硬件的mac地址。其中一行是: 我的问题是sudo脚本提示输入密码。有什么办法可以在不提示用户输入密码的情况下执行此操作? 问题答案: 最肯定的是,如果您不介意为该特定用户“免费使用”该特定命令: 基本上在这里看到我的其他答案:[Shell脚本-随着时间的流逝丢失了Sudo权限 可能最简单的方法是 另外,您可以在同一终端(tty /

  • 问题内容: 在Amazon S3 Linux实例上,我有两个名为的脚本,它们 永远 启动和停止(依次运行Node.js应用程序)。我使用这些脚本手动启动和停止我的Node.js应用程序。到目前为止,一切都很好。 我的问题:我还想将其设置为在系统启动时运行。我知道我需要在其中添加文件,并且知道如何将其符号链接到其中的适当目录,但是我无法弄清楚放置在其中的文件中实际需要什么。我认为这应该只是一条线,例

  • 问题内容: 在以前的计算机上,当我尝试在Windows命令提示符下退出Python脚本时,只需按+即可。 但是,当我在计算机上执行此操作时,它会告诉我“ KeyboardInterrupt”: 那么如何解决此问题,以便退出Python脚本? 谢谢。 编辑 : +的作品,但我需要输入它作为代码。希望有一种快速简单的方法来退出脚本,但是很好。 问题答案: 实际上,它取决于操作系统,也可能取决于您使用的

  • 问题内容: 我需要从Django Shell执行Python脚本。我试过了: 但这没有用。只是在等我写东西。 问题答案: 该<<部分有误,请<改用: 你也可以这样做: 对于python3,你需要使用

  • 我需要从Django shell执行一个Python脚本。我试过: 但是没有成功。它只是在等我写些什么。