[bash] メール送信

Cronとかで定期的にサーバの情報をメールしたい時に簡単なスクリプトでローカルのsendmailを使って送信する方法

SUBJECT="メールタイトル"
MAIL_FROM=admin@`hostname`
MAIL_TO=送信先メールアドレス
VERSION=0.0
cat <<-END | /usr/bin/nkf -j | /usr/sbin/sendmail -t
    Return-Path: <${MAIL_FROM}>
    From: FROMアドレス名 <${MAIL_FROM}>
    To: <${MAIL_TO}>
    Subject: ${SUBJECT}
    X-Mailer: メーラー名(適当) ${VERSION}
    MIME-Version: 1.0
    

    メール本文を書く
END

catのところで『<<-』とする事でメールデータをタブでインデント出来るので見た目がわかりやすくなる
※ 上のコードではスペースになってるのでコピペして使うとエラーになるぜ(笑)

2バイト文字(日本語)が使いたいのでnkfコマンドを間にかましてる
一時期はメインのリポジトリからインストール出来なくなってたけど、最近はどうなんだろ?
『調べてから書け!』と思ったそこの人!その通りです(ーー;)



この記事が気に入ったらサポートをしてみませんか?