Я работаю в среде Windows (мой ноутбук!), и мне нужно несколько сценариев, которые запускают другие программы, в значительной степени похожие на пакетный файл Windows.
как я могу запустить команду из python, чтобы программа при запуске заменила script? Программа интерактивна (например, унисон) и продолжает печатать строки и постоянно спрашивать пользователя.
Итак, просто запустить программу и распечатать вывод не хватит. Программа должна принять вход/выход script, довольно mcuh, как запуск команды из .bat файла.
Я пробовал os.execl, но он продолжает говорить мне "недопустимые аргументы", также он не находит имя программы (не ищет переменную PATH); Я должен дать ему полный путь.?!
в принципе, в пакете script могу написать: Профиль унисона
как я могу добиться такого же эффекта в python?
EDIT:
Я узнал, что это можно сделать с помощью os.system( ... )
, и поскольку я не могу принять свой собственный ответ, я закрываю вопрос.
EDIT: это должен был быть комментарий, но когда я опубликовал его, у меня не было много очков.
Спасибо Клаудиу, это в значительной степени то, что я хочу, за исключением маленькой вещи: я хочу, чтобы функция заканчивалась, когда программа выходит, но когда я пытаюсь ее унисон, она не возвращает управление python script, но для среды командной строки Windows
>>> os.execlp("unison")
C:\>Usage: unison [options]
or unison root1 root2 [options]
or unison profilename [options]
For a list of options, type "unison -help".
For a tutorial on basic usage, type "unison -doc tutorial".
For other documentation, type "unison -doc topics".
C:\>
C:\>
C:\>
как обойти это?