如何使用Python在Windows中打开指定路径的cmd并设置提示符颜色
解决方案
问题根因:你之前的写法存在两个问题:一是命令拼接的引号位置错误,&被放到了cmd /k的参数字符串外,导致color命令没有在新开的cmd窗口内执行;二是跨盘符切换目录需要给cd命令加/d参数,否则如果Python脚本在C盘,无法直接切换到P盘路径。
方案1:使用os.system实现(最简)
直接把目录切换、提示打印、颜色设置的命令都放到cmd /k的参数内,用&&拼接即可:
from os import system t1 = 'Some instructions that I need to print out for other users when the prompt is opened.' # 加start可新开独立窗口,不加则复用当前运行Python的终端窗口 system(f'start cmd /k "cd /d P:\\Some\\other\\location && echo {t1} && color 17"')
如果不需要把提示信息打印在新开的窗口里,去掉echo {t1} &&即可。
方案2:使用subprocess实现
如果偏好subprocess的写法,可以直接通过cwd参数指定新进程的工作目录,不需要手动执行cd命令,写法更简洁:
from subprocess import call # 新开指定路径、指定颜色的独立cmd窗口 call('start cmd /k color 17', shell=True, cwd='P:\\Some\\other\\location')
内容的提问来源于stack exchange,提问作者MarJer
相关产品推荐
相关产品推荐

