Главная страница


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : Artem Chuprina                       2:5020/400     12 Mar 2001  16:19:40
 To : Serge Matveev
 Subject : Re: Поймать stdout
 -------------------------------------------------------------------------------- 
 
 Здравствуй, Serge Matveev.
 
 В твоём письме от Sun, 11 Mar 2001 19:49:44 +0300 написано:
 
 SM>                                 Hi, Oleh!
 
 SM> 10 Мар 01 18:33, Oleh Khoma wrote to All:
 
 OK>> Для рассылки почты используется сендмейл вот таким вот образом:
 
 OK>> open (SENDMAIL, "|/usr/sbin/sendmail -t -oi -odd")
 
 OK>> Как поймать то, что этот процесс может выводить в stdout/stderr? Все
 OK>> это происходит в CGI скрипте, потому то, что валится в STDOUT есть
 OK>> бяка приводящая к 500 Server Error. Чтобы убрать сообщения делаю так:
 
 OK>> open (SENDMAIL, "|/usr/sbin/sendmail -t -oi -odd > /dev/null 2>&1")
 
 OK>> Hо мне в принципе очень хочется как то заполучить то, что оно выводит.
 OK>> Взять текст ошибки. Поскольку открыть процесс для чтения и записи
 OK>> одновременно нельзя, то как бы это сделать? И лучше без промежуточного
 OK>> файла.
 
 SM>     У меня сделано нечто вроде вот этого. Правда _не_ из CGI.
 
 SM>     В начале программы
 
 SM> my $MAIL = '|/usr/sbin/sendmail serge';
 SM> open STDOUT, $MAIL
 
 SM>     Потом
 
 SM> $email = "worm@transinf.spb.ru"
 SM> open MAIL, "|/usr/sbin/sendmail $email"
 
 SM> [Что-то тут льётся в середине] и в конце
 
 SM> close MAIL or my_die "Hе могу закрыть |/usr/bin/sendmail $email"
 
 SM>     И получаю письмо с ошибкой (как раз по close or die) вида:
 
 SM> ----------------------------------------------------------------------------
 SM> - From: Serge Matveev <serge> Date: Wed, 24 Jan 2001 11:58:22 +0300 (MSK)
 
 SM> worm@transinf.spb.ru... Domain must resolve
 
 SM> Hе могу закрыть |/usr/bin/sendmail worm@transinf.spb.ru
 SM> ----------------------------------------------------------------------------
 SM> -
 
 SM>     Да, всё это выдиралось из середины другого скрипта, так что могут быть
 SM> опечатки. Hо идея ясна?
 
 SM>         serge@matveev.spb.ru                      Serge Matveev & ...
 SM>         ICQ 3575357
 
 SM> ... A is for awk, which runs like a snail
 
 К чему ты это? Hе к вопросу, точно, к вопросу это отношения не имеет.
 
 -- 
 Artem Chuprina                            E-mail: ran@ran.pp.ru
 Programmer                                  FIDO: 2:5020/371.32
 Memonet Ltd.                             Phone: +7-095-284-1356
 --- ifmail v.2.15dev5
  * Origin: NTV Internet (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Поймать stdout   Oleh Khoma   10 Mar 2001 19:33:59 
 Re: Поймать stdout   A.Radoselsky   11 Mar 2001 10:42:12 
 Re: Поймать stdout   Valentin Davydov   11 Mar 2001 10:46:15 
 Re: Поймать stdout   Artem Chuprina   11 Mar 2001 16:09:12 
 Поймать stdout   Serge Matveev   11 Mar 2001 20:49:44 
 Re: Поймать stdout   Artem Chuprina   12 Mar 2001 16:19:40 
 Поймать stdout   Serge Matveev   12 Mar 2001 20:18:18 
 Re: Поймать stdout   Artem Chuprina   12 Mar 2001 23:37:18 
 Re: Поймать stdout   Oleh Khoma   14 Mar 2001 14:48:15 
 Поймать stdout   Serge Matveev   14 Mar 2001 21:16:14 
Архивное /ru.perl/16483a5156e86.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional