двойная кавычка в os.system на windows
Я хочу сбежать и все другие символы в имени и аргументах программы, поэтому я пытаюсь заключить их в двойные кавычки. и я могу сделать это в cmd.exe
C:\bay\test\go>"test.py" "a" "b" "c"
hello
['C:\\bay\\test\\go\\test.py', 'a', 'b', 'c']
но что'Что-то не так со следующим кодом, использующим os.sytem?
cmd = '"test.py" "a" "b" "c"'
print cmd
os.system(cmd)
его вывод:
C:\bay\test\go>test2.py
"test.py" "a" "b" "c"
'test.py" "a" "b" "c' is not recognized as an internal or external command,
operable program or batch file.
Почему вся строка "test.py» «А» «Б» «С»» признана единой командой? Но следующий пример нет:
cmd = 'test.py a b c'
print cmd
os.system(cmd)
C:\bay\test\go>test2.py
test.py a b c
hello
['C:\\bay\\test\\go\\test.py', 'a', 'b', 'c']
Спасибо!