0

我需要一些帮助...我的计算机上安装了一个程序,我想调用它来计算一些东西并给我一个输出文件...

在 Matlab 中,命令“dos()”可以为我提供 matlab 中的 cmd 屏幕输出。

我需要这个在 python 中工作,但我做错了。

data='file.csv -v'
db=' -d D:\directory\bla\something.db'
anw='"D:\Program Files\bla\path\to\anw.exe"' + db + ' -i' + data

“anw”输出是这个:

>>> anw

'"D:\\Program Files\\bla\\path\\to\\anw.exe" -d D:\\directory\\bla\\something.db -i file.csv -v' 
## without the "" it does not work either

import subprocess as sb    
p= sb.Popen('cmd','/K', anw) ## '/C' does not work either

我从 python shell 中的 cmd.exe 收到以下错误消息

Windows cannot find "\"D:\Program Files\bla\path\to\anw.exe"" Make sure you typed the name correctly, and then try again.

当我制作球棒时,这条线会运行。文件出来。它通过“dos(anw)”在matlab中运行,所以这里有什么问题?ps:我的命令中有空格......这可能是问题吗?我不知道cmd中的第一个“\”来自哪里。exe错误信息

4

1 回答 1

1

现在我创造了一个蝙蝠。包含 cmx.de 应该在输入文件所在的特定目录中执行的所有内容的文件...

我只需要告诉 python 用

import os
os.chdir("D:\working\directory")
os.system(r'D:\working\directory\commands.bat')

它工作得很好,并直接在 python shell 中给我 cmd 的输出

于 2013-11-13T21:24:46.997 回答