[linux] メールのソースをデコードして読む
問題
メールの元ファイルはMIMEエンコードやbase64エンコードされていて、直接閲覧しても読めないです。
うまく読む方法はありますか。
答え
ヘッダ部分
nkf -m で読める。
nkf -m sample.eml | head
To: test-test@example.com
Subject: 件名件名件名件名件名件名件名件名件名
From: info@example.com
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: BASE64
5qSc5Y+XXXXXXXXXXXXXXXXXXXXXXX~~~
ボディ部分(本文)
base64エンコードされているタイプなら、 base64 --decode で読める。
ヘッダ部分を除いた「xx行目以降」は、tail -n +xx で取得できる。
nkf -m sample.eml | tail -n +7 | base64 -di
→ デコードされた本文出力