我正在尝试编写一个python脚本,该脚本将打开命令提示符并将目录更改为git初始化的文件夹,并返回git状态。现在,我希望获得有关如何仅显示当前目录的帮助,以便我自己尝试解决该问题。
import subprocess
p = subprocess.Popen(['cmd.exe','dir'])
我希望这能显示我当前的目录,但是它只返回打开命令提示符时通常看到的内容。这样做并传递多个命令的正确方法是什么?
答案 0 :(得分:2)
您可以使用cmd.exe
来代替在Popen中显式使用shell=True
,该操作基本上是相同的(考虑到您可能希望在不同的操作系统上执行脚本,这样做会更好。) / p>
如果要获取已执行命令的结果,则可以使用stdout
和stderr
参数将输出重定向到subprocess.PIPE
,而使用{{1 }}。
所以您需要的解决方案是
p.stdout.readlines()