O munpack parece a ferramenta que você quer.
Eu tenho um email armazenado em texto simples (sim, cabeçalhos, mensagens, anexos, tudo em um arquivo de texto plano) e gostaria de extrair um documento em PDF a partir dele. Eu copiei o texto codificado em base64, depois executei base64 -d
e cat
em um arquivo. Eu então tentei abri-lo, o que não funcionou, e ele não parece um arquivo PDF.
Existe algo que estou fazendo errado aqui? Tenho quase certeza de que é, de fato, codificado em base64 e que é um arquivo PDF.
Aqui está o email:
---------- MESSAGE FOLLOWS ----------
Date: Tue, 6 Mar 2012 12:24:24 -0800 (PST)
From: "Outer, Inc." <[email protected]>
To: Mike Young <[email protected]>
Message-ID: <[email protected]>
Subject: Your results are in, Mike!
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="----=_Part_0_1998493940.1331065464916"
X-Peer: 127.0.0.1
------=_Part_0_1998493940.1331065464916
Content-Type: multipart/alternative;
boundary="----=_Part_1_1254200493.1331065464936"
------=_Part_1_1254200493.1331065464936
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Great job, Mike on your baby!
------=_Part_1_1254200493.1331065464936
Content-Type: text/html; charset=us-ascii
Content-Transfer-Encoding: 7bit
<html>
<body>
<h3>Great job, Mike on your baby!</h3>
</body>
</html>
------=_Part_1_1254200493.1331065464936--
------=_Part_0_1998493940.1331065464916
Content-Type: application/pdf; name="Baby Results.pdf"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="Baby Results.pdf"
JVBERi0xLjQKJeLjz9MKMyAwIG9iaiA8PC9UeXBlL1hPYmplY3QvQ29sb3JTcGFjZS9EZXZpY2VH
cmF5L1N1YnR5cGUvSW1hZ2UvQml0c1BlckNvbXBvbmVudCA4L1dpZHRoIDI1My9MZW5ndGggMTYx
...
HR5P9F0eg4+P8tWzo2bPl6eGcNwyLqqW+chQi7Fo/CTWPUI7Kud1ZYgpcnSg7do4SKpTy10jyggP
1dVbvqS63pYxNl1JGGcvD1P+VFdN2b7O3YBqXTuiRteun3nmUdcoObmr5qduv09