Форум сайта python.su
У меня установлена программа Cygwin (UNIX-подобная среда и интерфейс командной строки для Microsoft Windows). Мне необходимо из моего python приложения скомпилировать некий исходный код под Linux.
Т.е. грубо говоря в обычной жизни я делаю следующее. Запускаю Cywgin и помощью вот такого bat-файла:
@echo off
C:
chdir C:\cygwin\bin
bash --login -i
cd ~/project1 && make
Офлайн
import subprocess
Офлайн
Андрей Светловесли честно я не очень хорошо понимаю как это сделать
import subprocess
p = subprocess.Popen( "C:\\cygwin\\bash.exe --login -i", shell = True, stdin = subprocess.PIPE, stdout = subprocess.PIPE, stderr = subprocess.PIPE )
Офлайн
А разве нельзя в строке команды вызвать в виде “процесс + скрипт” ? т.е. в вашем случае “C:\\cygwin\\bash.exe **скрипт**”. Вроде тогда выбранный скрипт выполнится программой баш.exe, насколько я понял, это и требуется. Я конечно могу ошибаться, но по-моему правильно.
Отредактировано (Сен. 22, 2011 17:12:10)
Офлайн
Goliath
у subprocess.Popen есть метод communicate
Офлайн