- ベストアンサー
linuxからのメールのタイトルが文字化けとなる
linux文字コードはutf8,linuxからOutlook Expressに送信する。 受信したメールのタイトルは文字化けとなる。なぜですか。 linuxで、シェルの中で、下記の部分で、送信する。 /sbin/service snmpd start 2>&1 | \ /bin/mail -s "日本語" s@ks.co.jp 上記のソースを見ると、分かると思いますが。 どうすれば、文字化けがなくなれますか。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
subjectを、ISO-2022でエンコードしなければいけません。 こんなページがあったので。。。 http://www.kcn.ne.jp/~idic/cgi-bin/mime.cgi /bin/mail -s =?ISO-2022-JP?B?GyRCRnxLXDhsGyhC?= s@ks.co.jp で試してみて下さい。
その他の回答 (1)
- OKwebb
- ベストアンサー率44% (92/208)
Subjectの非Asciiの場合、Base64エンコード又はQエンコードする必要があります。 形式は以下 encoded-word = "=?" charset "?" encoding "?" encoded-text "?=" "日本語"をBase64エンコードした場合 ?iso-2022-jp?B?GyRCRnxLXDhsGyhC?= 詳細はRFC2047参照
補足
件名は必ず"日本語"ではないです。件名は日本語文字です。シェルの中で、件名の変数を受け取って、送信する。 例:/sbin/service snmpd start 2>&1 | \ /bin/mail -s "[$HOSTNAME]" $MAILTO 上記の"[$HOSTNAME]" は日本語文字となります。 ソースの中で、"[$HOSTNAME]" を文字コードiso-2022-jpに変換して、送信してほしいです。
補足
件名は必ず"日本語"ではないです。件名は日本語文字です。シェルの中で、件名の変数を受け取って、送信する。 例:/sbin/service snmpd start 2>&1 | \ /bin/mail -s "[$HOSTNAME]" $MAILTO 上記の"[$HOSTNAME]" は日本語文字となります。 ソースの中で、"[$HOSTNAME]" を文字コードiso-2022-jpに変換して、送信してほしいです。