Здравствуйте. Склепал такой скрипт. Понимаю что концовка mail -s ... и т.д. как-то неправильно написана, поскольку при отправке на собственный почтовый ящик (не этот естественно :) я ничего не получаю, хотя и сообщений об ошибке консоль не выдаёт.Кто-то мог бы подсказать в чём дело и как исправить скрипт, чтобы он подсчитав количество "for" отсылал сообщение с результатами по задаваемому адресу почты? (скрипт подсчитывает сколько раз "for" встречается в текстах исполняемых файлов, находящихся в каталогах указанных в $PATH и, по идее, должен отправлять результат на заданный адрес :( Без концовки программа абсолютно работоспособна.
find `echo $PATH | sed 's/:/ /g'` -type f -perm -o+rx | xargs grep for | wc –l | mail -s "Вывод команды" pupkin@mail.ru
а такое:
cat "Abc" | mail -s "Вывод команды" pupkin@mail.ruработает? что в маил-логах?
> cat "Abc" | mail -s "Вывод команды" pupkin@mail.ru
> работает? что в маил-логах?не знаю работает ли. видимо нет.
mail.log почему-то совсем пустой.
что делать?
>> cat "Abc" | mail -s "Вывод команды" pupkin@mail.ru
>> работает? что в маил-логах?
> не знаю работает ли. видимо нет.
> mail.log почему-то совсем пустой.
> что делать?MTA установили? сконфигурировали? видимо нет :)
варианты такие:* ставить и настраивать любой MTA (sendmail, exim, postfix)
* ставить легкий MTA (например ssmtp) который будет использовать другой SMTP сервер для отсылки (вариант для "домашних" сетей, где MTA не нужен)
* использовать вместо mail скрипт sendEmail , например, там все удобно настраивается на сторонний smtp сервер
какой-то МТА у меня стоит, но какой не знаю.Как это узнать?
Mail version 8.1.2 01/15/2001. Type ? for help.
а это из моих логов:
var/mail/valiko
Mail delivery failed: returning message to sender
From:
Mail Delivery System <Mailer-Daemon@kub>
To:
valiko@kub
Date:
Yesterday 20:43:05
This message was created automatically by mail delivery software.
A message that you sent could not be delivered to one or more of its
recipients. This is a permanent error. The following address(es) failed:
svgu@ukr.net
Mailing to remote domains not supported
------ This is a copy of the message, including all the headers. ------
Return-path: <valiko@kub>
Received: from valiko by Kub with local (Exim 4.69)
(envelope-from <valiko@kub>)
id 1PY0zJ-0002lh-5s
for svgu@ukr.net; Wed, 29 Dec 2010 20:43:05 +0200
To: svgu@ukr.net
Subject: Вывод команды
Message-Id: <E1PY0zJ-0002lh-5s@Kub>Mailing to remote domains not supported !!!
>[оверквотинг удален]
> Return-path: <valiko@kub>
> Received: from valiko by Kub with local (Exim 4.69)
> (envelope-from <valiko@kub>)
> id 1PY0zJ-0002lh-5s
> for svgu@ukr.net; Wed, 29
> Dec 2010 20:43:05 +0200
> To: svgu@ukr.net
> Subject: Вывод команды
> Message-Id: <E1PY0zJ-0002lh-5s@Kub>
> Mailing to remote domains not supported !!!Это Exim. Поддержка отправки писем на удаленные домены не включена(Примерный перевод). Надо включить, а как, зависит от системы, например в Debian что-то типа dpkg-reconfigure exim4-config и там выбрать нужную настройку. А вообще http://www.google.com/#sclient=psy&hl=en&q=exim+Mailing+to+r...
>[оверквотинг удален]
> этот естественно :) я ничего не получаю, хотя и сообщений об
> ошибке консоль не выдаёт.
> Кто-то мог бы подсказать в чём дело и как исправить скрипт, чтобы
> он подсчитав количество "for" отсылал сообщение с результатами по задаваемому адресу
> почты? (скрипт подсчитывает сколько раз "for" встречается в текстах исполняемых файлов,
> находящихся в каталогах указанных в $PATH и, по идее, должен отправлять
> результат на заданный адрес :( Без концовки программа абсолютно работоспособна.
> find `echo $PATH | sed 's/:/ /g'` -type f -perm -o+rx |
> xargs grep for | wc –l | mail -s "Вывод команды"
> pupkin@mail.ruУ вас это рабоает вообще? Помоему for надо хоть в какие кавычки взять, а то будет обрабатываться как комманда for. Жаль негде проверить....
всё работает, причина в неправильніх настройках мТА.
Люди отправляют без проблем.