Расписание отправки почты содержимого файла журнала

У меня установлен postfix почтовый агент, и я настроил ретрансляцию gmail, и я мог отправлять почту с терминала, как показано ниже:

root@statino1:~# mail -s "subject_here" my_gmail_id@gmail.com
CC: <hit enter for empty cc>

Type the mesage here
press Ctrl+d

Я должен отправить содержимое файла журнала в виде письма запланируйте его запуск каждый день.

Как отправить содержимое файла журнала в виде почтового сообщения, как автоматизировать ввод команды mail? так что я могу запланировать это. У кого-нибудь есть идеи?

6
задан 10 March 2011 в 07:28

1 ответ

Вы можете отправить электронное письмо с помощью одной команды, например:

mail -s 'Subject' you@example.com  < log.txt

mail ожидает поток ввода, если его нет, он получает стандартный ввод (т.е. давайте что-нибудь наберем). Оператор < (unix file-stream) указывает почте читать содержимое файла, а не / dev / stdin (который также является просто файлом).

Добавление вложения кажется немного сложнее:


Если вы хотите проверить, если файл пуст или нет, вы можете выполнить такой тест:

if [ -s test.txt ];
then
    echo "file is not empty";
fi

Итак, ваша команда будет выглядеть так:

if [ -s log.txt ]; then mail -s 'Subject' you@example.com  < log.txt; fi
0
ответ дан 10 March 2011 в 07:28

Другие вопросы по тегам:

Похожие вопросы: