электронная почта из сценария удара

#!/bin/bash
MESSAGE="Line one. /n"

MESSAGE="$MESSAGE Line two. /n"
MESSAGE="$MESSAGE Line three."

echo $MESSAGE | mail -s "test" "example@example.com"

Это то, как я должен получить каждую строку на ее собственной строке?

6
задан Paused until further notice. 16 February 2010 в 20:07
поделиться

3 ответа

Используйте heredoc .

mail -s "test" "example@example.com" << END_MAIL
Line one.
Line two.
Line three.
END_MAIL
14
ответ дан 8 December 2019 в 04:52
поделиться

Изменение:

echo $MESSAGE | mail -s "test" "example@example.com"

Кому:

echo -e $MESSAGE | mail -s "test" "example@example.com"
8
ответ дан 8 December 2019 в 04:52
поделиться

Совет heredoc хорош, плюс вы можете рассмотреть возможность использования mailx, для которого существует стандарт Posix или, возможно, sendmail, который будет существовать, если почтовый сервер - sendmail или postfix. (Я не уверен насчет qmail.)

Если не используется sendmail, также неплохо установить переменную MAILRC в /dev/null, чтобы обойти пользовательский сценарий конфигурации, если таковой имеется.

2
ответ дан 8 December 2019 в 04:52
поделиться
Другие вопросы по тегам:

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