отправка почты из командной строки Linux

отправка почты из командной строки Linux

Можно ли отправлять почту с терминала Linux на любую учетную запись Gmail?

Если возможно, то какая конфигурация необходима?

Я пробовал использовать mailx и sendmail, но это не работает.

Я тоже пробовал с такой дворнягой

echo "test" | mutt -s this-is-my-subjest [email protected]

но бесполезно...

Я использую CentOS 6.2.

решение1

Я бы посоветовал использовать sendEmail:

sendEmail-1.56 by Brandon Zehm <[email protected]>

Synopsis:  sendEmail -f ADDRESS [options]

  Required:
    -f ADDRESS                from (sender) email address
    * At least one recipient required via -t, -cc, or -bcc
    * Message body required via -m, STDIN, or -o message-file=FILE

  Common:
    -t ADDRESS [ADDR ...]     to email address(es)
    -u SUBJECT                message subject
    -m MESSAGE                message body
    -s SERVER[:PORT]          smtp mail relay, default is localhost:25

  Optional:
    -a   FILE [FILE ...]      file attachment(s)
    -cc  ADDRESS [ADDR ...]   cc  email address(es)
    -bcc ADDRESS [ADDR ...]   bcc email address(es)
    -xu  USERNAME             username for SMTP authentication
    -xp  PASSWORD             password for SMTP authentication

  Paranormal:
    -b BINDADDR[:PORT]        local host bind address
    -l LOGFILE                log to the specified file
    -v                        verbosity, use multiple times for greater effect
    -q                        be quiet (i.e. no STDOUT output)
    -o NAME=VALUE             advanced options, for details try: --help misc
        -o message-content-type=<auto|text|html>
        -o message-file=FILE         -o message-format=raw
        -o message-header=HEADER     -o message-charset=CHARSET
        -o reply-to=ADDRESS          -o timeout=SECONDS
        -o username=USERNAME         -o password=PASSWORD
        -o tls=<auto|yes|no>         -o fqdn=FQDN


  Help:
    --help                    the helpful overview you're reading now
    --help addressing         explain addressing and related options
    --help message            explain message body input and related options
    --help networking         explain -s, -b, etc
    --help output             explain logging and other output options
    --help misc               explain -o options, TLS, SMTP auth, and more

У меня это работает очень хорошо. Не забудьте использовать TLS с gmail. Вам нужно предоставить данные сервера, который будет отправлять письмо с этими параметрами:

    -s SERVER[:PORT]          smtp mail relay, default is localhost:25
    -xu  USERNAME             username for SMTP authentication
    -xp  PASSWORD             password for SMTP authentication

Для меня это лучший вариант, так как он позволяет добавлять вложения и его можно легко разместить в скриптах.

Пример использования:

sendEmail -f [email protected] -t [email protected] -s test -m messageBody -s smtp.gmail.com -xu [email protected] -xp xxxxxpass -o tls=auto
Aug 17 16:21:37 z sendEmail[22420]: Email was sent successfully!

решение2

Терминальная mailпрограмма должна справиться с этой задачей. Обычно она работает «прямо из коробки», позволяя пользователям/программам отправлять сообщения локально, внутри системы.

Введите и нажмите ввод. Затем введите свое сообщение и закройте/отправьте с помощью Ctl-D.mail -s 'subject line' [email protected]

решение3

Обычно вам не нужно настраивать что-то конкретное, в CentOS по умолчанию есть почтовый сервер.

Если я правильно помню, команда выглядит mailtoтак: введите информацию (от кого, тему и т. д.), затем введите текст, а когда закончите печатать, нажмите ctrl+D, и вы получите EOT.

Имейте в виду, что ваш почтовый сервер будет использовать вашу пользовательскую информацию или что-то в этом роде, from : user@pcnameно я сегодня не за Linux, поэтому не могу это проверить.

Надеюсь, это поможет.

РЕДАКТИРОВАТЬ :

вот ссылка на страницу руководства O'reilly:там

Связанный контент