我有一个python脚本,需要执行一个外部程序,但由于某种原因失败。
如果我有以下脚本:
import os;
os.system("C:\\Temp\\a b c\\Notepad.exe");
raw_input();
然后它失败,出现以下错误:
'C:\Temp\a' is not recognized as an internal or external command, operable program or batch file.
如果我用引号转义程序:
import os;
os.system('"C:\\Temp\\a b c\\Notepad.exe"');
raw_input();
然后它的工作。但是,如果我添加一个参数,它会停止工作:
import os;
os.system('"C:\\Temp\\a b c\\Notepad.exe" "C:\\test.txt"');
raw_input();
什么是正确的方法执行程序,并等待它完成?我不需要读取它的输出,因为它是一个可视化程序,做一个工作,然后只是退出,但我需要等待它完成。
还要注意,将程序移动到非间隔路径也不是一个选项。
编辑这也不工作:
import os;
os.system("'C:\\Temp\\a b c\\Notepad.exe'");
raw_input();
注意交换的单/双引号。
有或没有参数到记事本这里,它失败与错误消息
The filename, directory name, or volume label syntax is incorrect.