Python 3.6.7,Windows 7/10
我必须使用subprocess.run一个接一个地运行两个命令。第一条命令将打开一个新的命令提示符。下一条命令需要在新创建的命令提示符下运行。使用下面的代码,第二条命令始终在初始命令提示符下运行。能做到吗?
import subprocess
subprocess.run('first command', shell=True) #first command opens a new command prompt
subprocess.run('second command', shell=True) #second command needs to be run in the newly created command prompt
答案 0 :(得分:1)
这取决于要运行的命令,但我认为一种解决方案是创建一个批处理脚本,依次运行这两个命令。
或者您可以尝试在第一个子进程的stdin上写第二条命令,例如:
dyn:
但是我不确定这是否可行,因为该过程将在第一个命令终止后立即完成?
编辑:添加缩进
答案 1 :(得分:0)
为什么不通过管道传递命令?
subprocess.run('first command | second command', shell=True)