Russian Apache Switch to English
Switch to Russian koi8-r
windows=1251
cp-866
iso8859-5
Russian Apache Как это работает Рекоммендации Где взять Как установить Как настроить Статус и поддержка
Краткий обзор FAQ Список рассылки Благодарности Поиск по серверу Powered by Russian Apache
Russian Apache mailing list archive (apache-rus@lists.lexa.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [apache-talk] Double pipe under Apache



Для этого надо использовать open2 или open3 (последний еще и STDERR от
запускаемого процесса читает), которые и выдаеют тебе хэндлеры на запись и
на чтение.

То бишь,

use FileHandle;
use IPC::Open2;
$pid = open2(*Reader, *Writer, "cat -u -n" );
Writer->autoflush();
print Writer "stuff\n";
$got = <Reader>;
print $got;

_______________
Dmitry Sirik
e-mail: sirik@xxxxxxxxxxxxx


----- Original Message -----
From: Artem Koutchine <matrix@xxxxxxxxx>
To: <apache-talk@xxxxxxxxxxxxx>
Sent: 4 октября 2000 г. 12:06
Subject: [apache-talk] Double pipe under Apache


> Приветствую!
>
> У меня тут проблема возникла, наверное я что-то пропустил.
>
> код такой (на perl)
>
> print "Content-type: text/html\n\n";
> open (A, "| /bin/cat |");
> print A "HELLO\n";
> $b=<A>;
> close A;
> print $b;
> print "END\n";
>
> на выходе должно быть
>
> Content-type: text/html
>
> HELLO
> END
>
> Идея просто - двойная труба, в
> этом простейшем случае - cat. Запуская из shell - все работает, запуская
> как cgi скрипт получаем:
> Content-type: text/html
>
> END
>
> т.е. двойной pipe не пашет.
> "| /bin/cat > zzz" работает и все данные идут в 'zzz'.
>
>
> В чем дело?
>
> Артем
>
>
============================================================================
=
> =               Apache-Talk@xxxxxxxxxxxxx mailing list
=
> Mail "unsubscribe apache-talk" to majordomo@xxxxxxxxxxxxx if you want to
quit.
> =       Archive avaliable at http://www.lexa.ru/apache-talk
=
>
>

=============================================================================
=               Apache-Talk@xxxxxxxxxxxxx mailing list                      =
Mail "unsubscribe apache-talk" to majordomo@xxxxxxxxxxxxx if you want to quit.
=       Archive avaliable at http://www.lexa.ru/apache-talk                 =






Спонсоры сайта:

[ Russian Apache ] [ Как это работает ] [ Рекомендации ] [ Где взять ] [ Как установить ] [ Как настроить ] [ Статус и поддержка ] [ Краткий обзор ] [ FAQ ] [ Список рассылки ] [ Благодарности ] [ Поиск по серверу ] [ Powered by Russian Apache ] [ Apache-talk archive ]

"Russian Apache" includes software developed by the Apache Group for use in the Apache HTTP server project (http://www.apache.org/) See Apache LICENSE.
Copyright (C) 1995-2001 The Apache Group. All rights reserved.
Copyright (C) 1996 Dm. Kryukov; Copyright (C) 1997-2009 Alex Tutubalin. Design (C) 1998 Max Smolev.