The OpenNET Project / Index page

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




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
dup2 перенаправление , !*! dsfaf, 14-Июл-09, 17:41  [смотреть все]
Привет всем.
Хочу перенаправлять весь STDERR на почту. Знаю что есть ф-я dup2().
Пробую:
#!/usr/local/bin/perl

use strict;
use POSIX qw(dup2);

dup2(<STDOUT>,"| mail -s test_redir root");

print "redirect";

На STDOUT выводит, а письма нет...

  • dup2 перенаправление , !*! angra, 18:55 , 14-Июл-09 (1)
    • dup2 перенаправление , !*! dsfaf, 11:02 , 22-Июл-09 (4)
      >1) зачем для этого dup2, если можно просто переоткрыть/присвоить STDERR
      >2) вы говорите про STDERR, а в коде работаете с STDOUT, так
      >что на самом деле вам нужно?

      нужен STDERR. это была опечатка.
      мне на самом деле хотелось бы чтобы STDERR выводился как стандартным образом, так и отправлялся на мыло. поэтому выбор пал на dup2

  • dup2 перенаправление , !*! coDEbugger, 14:28 , 15-Июл-09 (2)
  • dup2 перенаправление , !*! аноним, 18:49 , 15-Июл-09 (3)
    • dup2 перенаправление , !*! dsfaf, 11:10 , 22-Июл-09 (5)
      >>dup2(<STDOUT>,"| mail -s test_redir root");
      >
      >Кошмар, слов нет! Слабо открыть perldoc POSIX и почитать какие аргументы принимает dup2? Нет, не <STDOUT> (это вообще-то строка, прочитанная из STDOUT, что само по себе бред) и даже не STDOUT. И нет, не строку.
      >
      >Когда разберетесь с этим, откройте perldoc -f open и узрите все что
      >вам нужно с примерами.

      каюсь, не осилил я книжку Ларри Уолла. Но если б я знал - не спрашивал. Для того и есть форум, я думаю.

      я читал man dup2. пробовал много всего.. потом решил спросить.
      в общем, как я написал angra, мне нужно чтобы STDERR валился параллельно и туда и сюда.




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

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