linuxで、sendmailコマンドの使い方を教えていただけますか。

このQ&Aに関連する最新のQ&A

A 回答 (4件)

man sendmail



質問の内容だけですと何を知りたいのかが不明です。
全てを説明するのであれば本が1冊出来上がるかと思います。

この回答への補足

(1)ネットで、例がいくつ見つかりましたが、タイトルの名を以下のように設定されます。
$ cat mail_header.txt | nkf --mime >> tmp.mail_header.txt

上記の設定方法で、nkfのインストールが必要です。私はiconvコマンドをここで、利用してほしいですが、できますか。
例のアドレス:http://q.hatena.ne.jp/1182165366
(2)ネットの例によって、sendmailを実行する場合、たくさんの設定が必要です。例:Content-Typeとか。そうするか、シェルで、sendmailを利用すると、すごく手数がかかります。
 この設定はsendmailのプロパティファイルで、設定できますか。またはどうやって設定できますか。

補足日時:2009/05/12 10:55
    • good
    • 1

nkf を別環境でコンパイルして


作業用ディレクトリに配置はだめなんですか?
スクリプト等を利用するのであれば$PATHの位置に配置しなければ
問題は無いかと思いますがいかがでしょう?
    • good
    • 0

だんだん的外れな方向に行くのを傍観しててもよかったのですが…。



>$ cat mail_header.txt | nkf --mime >> tmp.mail_header.txt
>上記の設定方法で、nkfのインストールが必要です。私はiconvコマンドをここで、利用してほしいですが、できますか。

nkfと全く同じ…というのは無理かも知れませんが。
Subjectヘッダのエンコードなら、
SUBJECT="Subject: =?iso-2022-jp?B?"`echo "日本語" | iconv -t ISO2022JP | base64`"?="
って感じでシェル変数に代入可能かと。
ただし、長すぎる場合に改行を挟む。というのが正しく動作しませんが。
# base64コマンドが改行してくれますが、MIMEエンコードとしては正しくない。

php使用可能ならば、
php -r 'echo iconv_mime_encode( "Subject", "日本語", array("input-charset" => "UTF-8", "output-charset" => "ISO-2022-JP"));'
とするとか。

>(2)ネットの例によって、sendmailを実行する場合、たくさんの設定が必要です。例:Content-Typeとか。そうするか、シェルで、sendmailを利用すると、すごく手数がかかります。
> この設定はsendmailのプロパティファイルで、設定できますか。またはどうやって設定できますか。

すでに別のところで回答されていますが…
エンコーディングなどはクライアント側のお仕事です。
sendmailに渡し前にシェルスクリプトなどで整形するべきです。
# カラー表示対応のエスケープシーケンスの除去なども
# http://oshiete1.goo.ne.jp/qa4943407.html
# で回答ついていますけど。

Redhat系ならば…
/etc/init.d/functionsに
# This all seem confusing? Look in /etc/sysconfig/init,
# or in /usr/doc/initscripts-*/sysconfig.txt
なんてコメントがあります。
/etc/sysconfig/initを編集することで、「[ OK ]」等のカラー出力を抑制できるみたいですが…。
    • good
    • 0

コマンドラインでコンバート処理するならnkfが一番だとおもいますが


インストールできない理由があるのでしょうか?

Eメールはいろいろ制限も多いので自己解決ができないようであれば
なにかのライブラリ(たとえばperlやphpなど)で処理するのが
よろしいかと。

この回答への補足

sendmailコマンドを利用する際に、かなり多くの設定があります。
こういう設定はsendmail.cfとかの中で、設定できますか。

補足日時:2009/05/12 13:27
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q「mail」コマンドと「sendmail」コマンドについてのくだらない質問です

よろしくお願いします。
電子メールの送受信を行う「mail」コマンドというのがあるのですが、そのほかに「sendmail」というコマンドがあるようです。
この「sendmail」もメールの送受信に使うコマンドでしょうか。
ちなみに、うちの自宅サーバでは「mail」コマンドは使えますが「sendmail」コマンドが使えません。
$ /usr/lib/sendmail
というようにフルパスで指定してもダメでした。
5分経っても10分経っても次のプロンプトが表示されずに反応が無くなってしまいますので「Ctrl」+「c」キーで強制的にプロンプトを表示させるしかありません。
ひょっとして最近コマンド名が変わったとか、そういうことでしょうか。

ディストリビューションはRed Hat Linux8.0で
SMTPサーバはsendmail-8.12.5-7.i386.rpmとかいうものです。
どなたか教えてください。

Aベストアンサー

vオプションと宛て先を指定して起動し、メール本文、「.」(ピリオド)で完了です。

マシンのFQDN:hogehoge.somedomain.net
ユーザ名  :honyarara
だとするとこうなります。

-------------------------------------------
$ /usr/lib/sendmail -v honyarara@hogehoge.somedomain.net
This is test mail  <-- メール本文
.          <-- ピリオドのみ
-------------------------------------------

ひょっとしたら root権限が必要かも。

Qlinuxからのメールが文字化けとなる

linux文字コードはutf8,linuxからOutlook Expressに送信する。
受信したメールは文字化けとなる。なぜですか。

linuxで、シェルの中で、下記の部分で、送信する。
/sbin/service snmpd start 2>&1 | \
/bin/mail -s "snmpd was restarted tomatically." s@ks.co.jp

上記のソースを見ると、分かると思いますが。
メールの本体について、linuxで、VIモードで、
snmpd を起動中: ^[[60G[ ^[[0;32mOK^[[0;39m ]となっています。
catモードで、見ると、snmpd を起動中: [OK] となっています。

どうすれば、文字化けがなくなれますか。

Aベストアンサー

>「snmpdを起動中」の部分も化けています。

では、serviceコマンドの出力をメールで標準的に用いられる文字コードに変換する

/sbin/service snmpd start 2>&1 | iconv -f UTF-8 -t iso-2022-jp | mail -s .....

とか、そもそもメッセージを英語にする

LANG=C /sbin/service snmpd start 2>&1 | mail -s .....

などの対応が考えられます。
ただし、それでも [OK] の前後の制御文字列は残ってしまいますので、

> 制御文字列を取り除くようなフィルタを通す必要があります。』はどいうことですか。

sed などを使って、制御文字を削除するということです。


人気Q&Aランキング

おすすめ情報