ThunderbirdまたはGmailに保存されている電子メールファイルにBase64でエンコードされた埋め込み添付ファイルをどのようにデコードしますか?

ThunderbirdまたはGmailに保存されている電子メールファイルにBase64でエンコードされた埋め込み添付ファイルをどのようにデコードしますか?

ローカルでファイルをエンコードしてデコードすると正常に動作しますが、base64 [--decode]ThunderbirdまたはGmailに保存されているemlファイルのBase64エンコードインライン添付ファイルをデコードできません。

すべてのemlファイルのbase64エンコードブロックはbase64生成されたブロックと似ていますが、行の長さは異なります。 emlファイルのbase64エンコードテキストブロックの行は、次のように構成されています。72文字、ローカルで生成されたbase64エンコーディングファイルには、次のものが含まれます。76文字の長さワイヤー。私はこの違いがbase64 --decodeEMLファイルの断片がうまく利用できない理由だと思います。

私の仮定は本当ですか?これらの添付ファイルをどのように解読しますか?

ベストアンサー1

このコマンドはbase64実行されますコーディングオプションを使用して他の値を指定しない限り、デフォルトの列幅である76文字でテキストを折り返します--wrap=COLS

このコマンドは、列の幅に関係なく正しく機能しますbase64 --decode。たとえば、テキストブロックは、長さに関係なく1行で構成したり、固定列の幅に合わせて複数行で構成したりできます。

ThunderbirdやGMailなどのWebメールに保存されている「インターネットメッセージ形式」(* .eml)ファイルの問題は、実際にはUnix / Linux(「LF」ではなくDOS / Windows(「CRLF」/ "\ r \ n"))を使用していますするということですbase64base64 --decode

dos2unixこれは、インターネットメッセージ形式(* .eml)ファイル(またはこのファイルから取得されたBase64エンコードテキストブロック)を最初に次のように変換する必要があることを意味します。今後base64 --decode注文を実行します。

おすすめ記事