Python中的子进程模块到cmd.exe

时间:2016-03-01 02:58:58

标签: python windows cmd subprocess

我在这里有一些代码试图从Python打开cmd.exe并为命令输入一些行来使用。

这是:

PDF= "myPDF"
output= "my output TIF"

def my_subprocess(command,c='C:\here'):
     process = subprocess.Popen(command,stdout=subprocess.PIPE,shell=True,cwd=c)
     communicate = process.communicate()[0].strip()      

my_subprocess('"cmd.exe" && "C:\\here\\myinfamous.bat" && "C:\\my directory and lines telling cmd to do stuff"'+ PDF + " " + output)

使用我的其余脚本运行时,命令提示符甚至没有打开,似乎根本没有输出或错误。我的想法是它甚至没有运行cmd.exe命令,所以这些代码都不会用于创建最终输出。

我有什么不正常的事吗?

谢谢。

1 个答案:

答案 0 :(得分:1)

您需要将subprocess.call替换为import subprocess subprocess.call(['C:\\Windows\\System32\\Notepad.exe', 'C:\\openThisfile.txt'])

这是Windows 8上的一个工作代码,它使用记事本打开文本文件。第一个字段是命令本身,第二个字段是参数。

您可以修改这些内容并使用您的文件进行测试。

{{1}}