|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Serge Matveev 2:5030/182 11 Mar 2001 20:49:44 To : Oleh Khoma Subject : Поймать stdout -------------------------------------------------------------------------------- 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> файла. У меня сделано нечто вроде вот этого. Правда _не_ из CGI. В начале программы my $MAIL = '|/usr/sbin/sendmail serge'; open STDOUT, $MAIL Потом $email = "worm@transinf.spb.ru" open MAIL, "|/usr/sbin/sendmail $email" [Что-то тут льётся в середине] и в конце close MAIL or my_die "Hе могу закрыть |/usr/bin/sendmail $email" И получаю письмо с ошибкой (как раз по close or die) вида: ----------------------------------------------------------------------------- From: Serge Matveev <serge> Date: Wed, 24 Jan 2001 11:58:22 +0300 (MSK) worm@transinf.spb.ru... Domain must resolve Hе могу закрыть |/usr/bin/sendmail worm@transinf.spb.ru ----------------------------------------------------------------------------- Да, всё это выдиралось из середины другого скрипта, так что могут быть опечатки. Hо идея ясна? serge@matveev.spb.ru Serge Matveev & ... ICQ 3575357 ... A is for awk, which runs like a snail * Origin: После нас пришло новое поколение и выбрало Pepsi. (2:5030/182) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/22753aabae3a.html, оценка из 5, голосов 10
|