Linux コマンドラインからメールを送信する

Linux コマンドラインからメールを送信する

Linux ターミナルから任意の Gmail アカウントにメールを送信することは可能ですか。

可能であれば、どのような構成が必要ですか。

mailx と sendmail を試しましたが、動作しません。

私もこのようにmuttで試してみました

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

私にとっては非常にうまく機能しています。Gmail では TLS を使用することを忘れないでください。次のオプションを使用して、メールを送信するサーバーの詳細を提供する必要があります。

    -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 のマニュアルページへのリンクがあります:そこには

関連情報