【发布时间】:2019-03-18 22:01:59
【问题描述】:
所以本质上我想要做的是编写一个 python 脚本,它将在应用程序自己的命令行中执行一系列命令。我知道子进程模块以及如何使用它在 shell 中一个接一个地执行命令,但是一旦使用脚本成功执行它,我似乎无法弄清楚如何在应用程序的 shell 中导航。例如,假设我正在使用应用程序“app”。我使用 shell 中的命令“runmod app”成功执行应用程序,然后在 shell 中启动应用程序,应用程序的内部命令行以“app>”开头。如何使用我的脚本从这个内部应用命令行执行命令?
【问题讨论】:
-
你在寻找类似
os.system('my command line argument')的东西吗? -
似乎您可以使用管道向其发送命令以执行(
subprocess支持它们)。 -
许多应用程序都有交互式命令行,例如
sh和python。他们通常还可以选择以非交互方式评估命令,例如sh -c 'my command'或python -c 'my command'。您应该检查您的应用程序是否可以执行相同的操作。如果不能,您可以运行应用程序的交互式命令行和write the commands to the process's stdin -
请出示相关代码。请说明遇到错误的位置。另见How to create a Minimal, Complete, and Verifiable example。