• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:linuxのmailコマンドの文字化けについて)

Linuxのmailコマンドで文字化けが発生する場合の解決方法とは?

このQ&Aのポイント
  • Ubuntuマシンで使用するmailコマンドでドコモの携帯にメールを送ると文字化けが発生する問題があります。この問題を解決するためには、送信側での設定変更が必要です。
  • メールヘッダのcontent-typeが設定されていないため、文字コードの指定がされていないと考えられます。content-typeのcharsetを設定することで問題を解決できます。
  • postfixのmain.cfには該当する設定がないため、mailer側で設定変更を行う必要があります。具体的には、mailコマンドを使用する際にcharsetを指定することで文字化けを回避できます。

質問者が選んだベストアンサー

  • ベストアンサー
  • Wr5
  • ベストアンサー率53% (2173/4061)
回答No.2

送信するメッセージのエンコード、およびそれに関するMIMEヘッダの付与はメーラー側の責任…だったかと。 postfix単体ではどうにもならないと思われます。 # SpamAssassinでチェックする方法のように外部プログラムに頼ることになる…かと。 /bin/mailでは追加のヘッダを指定することができないようですので、postfixインストール時に追加されているであろうsendmail互換プログラムを使用することになると思われます。 # CentOS5.5ならsendmail.postfixという名前で入っています。 ちなみに、sendmail.postfixで送信する場合はToヘッダなど、諸々自分で指定する必要がある…みたいです。 # そのあたりは大本のsendmailでのメール送信に関して検索すると出てくるのではないでしょうか…。 Subjectで日本語を使う場合もいろいろと決まり事がありますし… # 一般的な日本語メールではISO-2022-JPでエンコードされているかと。 本文の部分はnkfでISO-2022-JPにエンコードで、Subjectは-Mオプションでできる…ようです。 # 手元のCentOS5.5に入っているnkfでは-MオプションだけだとSubjectヘッダにそのまま渡せるような形式にはなってくれませんでしたけど。 # なぜか終端の"?="が付かない……。しかも途中で切れている感じでしたし…。

kokawa2003
質問者

補足

答えが分かったので補足します。ubuntu のmail(mailxも)は-aでヘッダを追加できます。 だから mail -a 'MIME-Version: 1.0' -a 'Content-Type: text/plain; charset="UTF-8"' -a 'Content-Transfer-Encoding: 7bit' XXXXX@docomo.ne.jp とヘッダを追加指定することでうまくできました。(長すぎて見づらくてすいません)ただこの設定をどこかに保存できるのか?は不明です

その他の回答 (1)

  • anmochi
  • ベストアンサー率65% (1332/2045)
回答No.1

 恐らくですが、mailコマンドの完了時点で文字化けしているはずです。postfix側で対処できる話では無いでしょうね。  なので、以下のようにしてみると良いでしょう。 $ nkf -W -e(UTF-8のファイル) | mail XXX@docomo.ne.jp  これはUTF-8のファイルをEUCのファイルに変換しそのままmailコマンドへ受け渡します。nkfコマンドの引数に関しては色々試行錯誤してみてください。

関連するQ&A