The OpenNET Project / Index page

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




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
Python, запуск процесса в трубу через Popen , !*! Python, 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


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

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

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

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

    • Python, запуск процесса в трубу через Popen , !*! Python, 11:47 , 11-Окт-09 (2)
      >Не вполне точно понял, что вы пытаетесь сделать, но зная о питоне
      >только, что это не змея и пользуясь гуглом (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 ?  

    • Python, запуск процесса в трубу через Popen , !*! Python, 12:02 , 11-Окт-09 (3)
      >И у меня к вам встречный вопрос: что помешало вам найти это
      >самостоятельно?

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

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


  • Python, запуск процесса в трубу через Popen , !*! Igor P., 01:09 , 11-Ноя-09 (4)
    >NameError: global name 'PIPE' is not defined

    shell.PIPE




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

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