不能 运行 在命令提示符下使用 Python 多个命令

Can't run multiple commands in command prompt using Python

我正在尝试使用 Python 打开 Windows 命令提示符,然后执行一些命令。这是我使用的代码:

import os

os.system("start /B start cmd.exe @cmd /k cd C:/ & color 04")

现在命令提示符打开并且目录更改为 C:\> 但是第二个更改文本颜色的命令不起作用并且没有产生任何错误。当我在命令提示符本身中 运行 cd C:/ & color 04 时,它仍然有效。所以看来我的问题在于 & 登录 cd C:/ & color 4 因为 & 之后的命令没有执行。

如何通过我的 Python 代码使用此功能(请记住,我希望命令提示符对用户可见)?

这样的 start command(在打开的 cmd window 中键入)的正确语法是

start "" cmd /k "cd /D C:\ & color 04"

在Python、escape"(双引号)和\(反斜线)如下:

import os
os.system("start \"\" cmd /k \"cd /D C:\ & color 04\"")

The backslash (\) character is used to escape characters that otherwise have a special meaning, such as newline, backslash itself, or the quote character.

另请阅读整个 cmd /?start /? 以获得进一步的解释。