Harici bir program yürütmesi gereken bir Python betiği var, ancak bazı nedenlerden dolayı başarısız.
Aşağıdaki komut dosyası varsa:
import os;
os.system("C:\\Temp\\a b c\\Notepad.exe");
raw_input();
Sonra aşağıdaki hatayla başarısız olur:
'C: \ Temp \ a' dahili veya harici bir komut, çalıştırılabilir program veya toplu iş dosyası olarak tanınmıyor.
Programdan alıntılarla kaçarsam:
import os;
os.system('"C:\\Temp\\a b c\\Notepad.exe"');
raw_input();
Sonra işe yarıyor. Ancak, bir parametre eklerseniz, tekrar çalışmayı durdurur:
import os;
os.system('"C:\\Temp\\a b c\\Notepad.exe" "C:\\test.txt"');
raw_input();
Bir programı yürütmenin ve tamamlanmasını beklemenin doğru yolu nedir? Bir iş yapan ve daha sonra sadece çıkış yapan görsel bir program olduğundan, çıktıyı okumama gerek yok, ancak tamamlanmasını beklemem gerekiyor.
Ayrıca, programı aralıksız bir yola taşımanın da bir seçenek olmadığını unutmayın.
Bu da çalışmaz:
import os;
os.system("'C:\\Temp\\a b c\\Notepad.exe'");
raw_input();
Değiştirilen tek / çift tırnaklara dikkat edin.
Not Defteri'ne bir parametre olsun veya olmasın, hata mesajı ile başarısız olur
Dosya adı, dizin adı veya birim etiketi sözdizimi yanlış.
"C:\Program Files\GDAL\gdal_translate.exe" -ot byte -of GTIFF -scale -co PHOTOMETRIC=CMYK "cmyk-16.tif" "cmyk-8_out.tif"
. Python, bu olur: ["C:\\Program Files\\GDAL\\gdal_translate.exe", "-ot", "byte", "-scale", "-co", "PHOTOMETRIC=CMYK", "input_cmyk-16.tif", "output_cmyk-8.tif"]
.
os.system(r'C:\temp\"a b c"\Notepad.exe')
veya şunu:os.system('C:\\temp\\"a b c"\\Notepad.exe')