Python执行命令行,发送输入和读取输出

xia*_*012 7 python io

如何实现以下功能:

  1. Python执行一个shell命令,它等待用户注意input某些东西
  2. 在用户键入后input,程序会响应一些output
  3. Python抓住了 output

mgi*_*son 9

你可能想要subprocess.Popen.要与流程进行通信,您可以使用该communicate方法.

例如

process=subprocess.Popen(['command','--option','foo'],
                         stdin=subprocess.PIPE,
                         stdout=subprocess.PIPE,
                         stderr=subprocess.PIPE)
inputdata="This is the string I will send to the process"
stdoutdata,stderrdata=process.communicate(input=inputdata)
Run Code Online (Sandbox Code Playgroud)

  • 如果我有 2 个或更多输入并且我想在后台运行它以便我看不到控制台怎么办。 (2认同)