The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Python, запуск процесса в трубу через Popen "
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [ Отслеживать ]

"Python, запуск процесса в трубу через Popen "  +/
Сообщение от Python on 10-Окт-09, 17:37 
import subprocess as shell

po = shell.Popen(["xz", "-d -c /tmp/freetype-2.3.5-i486-1.txz"], stdout=PIPE).stdout

NameError: global name 'PIPE' is not defined


Как открыть процесс и получить файловый объект и что бы это работало ?

Высказать мнение | Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Python, запуск процесса в трубу через Popen "  +/
Сообщение от jd (??) on 11-Окт-09, 05:19 
Не вполне точно понял, что вы пытаетесь сделать, но зная о питоне только, что это не змея и пользуясь гуглом (python popen example), за две минуты получил это:
import os
p = os.popen("echo hello; echo there")
for line in p.readlines():
  print line

Были также какие-то вариации на тему popen2, popen3, чтобы получить не только stdout...

И у меня к вам встречный вопрос: что помешало вам найти это самостоятельно?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Python, запуск процесса в трубу через Popen "  +/
Сообщение от Python on 11-Окт-09, 11:47 
>Не вполне точно понял, что вы пытаетесь сделать, но зная о питоне
>только, что это не змея и пользуясь гуглом (python popen example),
>за две минуты получил это:
>
import os 
>p = os.popen("echo hello; echo there")
>for line in p.readlines():
>  print line

>Были также какие-то вариации на тему popen2, popen3, чтобы получить не только
>stdout...
>

Я нашёл, но примеры и то как это расписано во встроенной справке не работают - вылетает ошибка, я её привёл в посте - NameError, так быть не должно. А то что вы нашли, из другого модуля.
>И у меня к вам встречный вопрос: что помешало вам найти это
>самостоятельно?

Не всё так просто. Ваш пример выдаёт ошибку:
UnicodeDecodeError: 'utf8' codec can't decode byte 0xa9 in position 2550: unexpected code byte

И ваш вопрос не по теме. Мне помешало то что на русскоязычных форумах когда задаёшь вопрос тебе не отвечают по теме (а все ответы сохраняются для последующего поиска ) а в оффтоп всё заводят. Всё это спам.

Мой вопрос: Как всё таки получить файловый объект в Python/Пайтоне/Питоне (file object) запустив в системе внешнюю программу которая передаёт результат своей работы (типа binary stream) на stdout ?  

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Python, запуск процесса в трубу через Popen "  +/
Сообщение от Python on 11-Окт-09, 12:02 
>И у меня к вам встречный вопрос: что помешало вам найти это
>самостоятельно?

БОЛЬШОЕ спасибо, помощь была безценной ...

Вот то же самое:
http://bytes.com/topic/python/answers/802788-popen-nameerror...


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "Python, запуск процесса в трубу через Popen "  +/
Сообщение от Igor P. on 11-Ноя-09, 01:09 
>NameError: global name 'PIPE' is not defined

shell.PIPE

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру