Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何使用子流程生成一系列命令来命令windows命令promput?_Python_Windows_Command Line_Subprocess_Command Prompt - Fatal编程技术网

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)