Python 如何使用子流程生成一系列命令来命令windows命令promput?
我正在尝试生成一系列命令,每个命令之间都有一个回车符,但有些命令不起作用 我认为以下是我想要的:Python 如何使用子流程生成一系列命令来命令windows命令promput?,python,windows,command-line,subprocess,command-prompt,Python,Windows,Command Line,Subprocess,Command Prompt,我正在尝试生成一系列命令,每个命令之间都有一个回车符,但有些命令不起作用 我认为以下是我想要的: subprocess.call(["PowerShell", r"cd C:\Users\Spencer", "dir"]) 但这似乎只是将每个命令放在一行上,用空格隔开 我还尝试了以下方法: subprocess.call("PowerShell") subprocess.call(r"cd C:\Users\Spencer") subprocess.call("dir") 但似乎每个子流程都
subprocess.call(["PowerShell", r"cd C:\Users\Spencer", "dir"])
但这似乎只是将每个命令放在一行上,用空格隔开
我还尝试了以下方法:
subprocess.call("PowerShell")
subprocess.call(r"cd C:\Users\Spencer")
subprocess.call("dir")
但似乎每个子流程都是。呼叫发生在新的终端
感谢您的帮助。您需要使用
Powershell
可执行文件的-Command
选项,请参阅您应该查看Popen(子流程的底层功能)和communicate()
方法,该方法将允许您向子流程发出命令。我花了很多时间查看子流程文档,但仍然很困惑。请举一个简单的例子,说明如何做到以上几点,我们将不胜感激。我们的想法是,每个命令后面都会跟着enter键,就像一个人在与命令提示符交互一样。上面的代码没有按预期工作的原因,答案如下:这里:按照上面的方式输入后续命令很好,问题是我使用了“cd…”(改为us os.chdir)和“dir”(需要包括shell=True)