Python-打开新shell并运行命令

Python-打开新shell并运行命令,python,shell,terminal,command,Python,Shell,Terminal,Command,目前,我正在Python中使用以下方法运行bash命令: os.system(cmd) 但是,我需要在新的shell/终端中运行该命令。有人知道怎么做吗 谢谢, Danos.system()被弃用,取而代之的是: import subprocess print subprocess.check_output("command", shell=True) 我使用以下方法(这也会将stderr重定向到stdout): Windows“WshShell”,谷歌it,就是答案。我的完整步骤: 安装

目前,我正在Python中使用以下方法运行bash命令:

os.system(cmd)
但是,我需要在新的shell/终端中运行该命令。有人知道怎么做吗

谢谢, Dan
os.system()
被弃用,取而代之的是:

import subprocess
print subprocess.check_output("command", shell=True)

我使用以下方法(这也会将stderr重定向到stdout):

Windows“WshShell”,谷歌it,就是答案。我的完整步骤:

安装

1. pip install pywin32-221-cp36-cp36m-win_amd64.whl
2. python.exe pywin32_postinstall.py -install  (DOS command line)


运行()是您所需要的,有许多不同的运行方式。隐藏窗口,新窗口,全屏,最小化。。。等等。

所谓“新终端”,您的意思是希望您的窗口管理器创建一个新的终端窗口,在其中运行命令?这实际上是创建一个新的分离进程还是只是一个子shell?bcs子shell可能与文件句柄冲突。ie使用os.system()是不好的,因为那是一个子shell
1. pip install pywin32-221-cp36-cp36m-win_amd64.whl
2. python.exe pywin32_postinstall.py -install  (DOS command line)
3. import win32com.client
4. WshShell = win32com.client.Dispatch("WScript.Shell")
5. WshShell.run("cmd")