¿Cómo puedo extraer un archivo adjunto del cuerpo del correo electrónico (codificado como base64)


13

¿Cómo puedo extraer archivos adjuntos de un correo electrónico cuando llegan codificados en el cuerpo del correo electrónico de esta manera:

------ =_NEXTPART_FORMSCAPE_MAIL_message101122101615
Content-Type: application/octet-stream; name="MyFile_hasalongish
     filename_22-NOV-2010.pdf"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="MyFile_hasalongishfilename_22-NOV-2010.pdf"
Content-Description: MyFile_hasalongishfilename_22-NOV-2010.pdf

JVBEDi0xLjMKJcfsj6IKNSAwIG9iago8PC9MZW5ndGggNiAwIFIvRmlsdGVyIC9GbGF0
ZFRGVSdsfSDF43N0cmVhbQp4nJ0b23IVN/LdXzG1D7vnbOUMo9tISiWpBduAN2CMbZJN
[...]
OUIwOEYxRDcyRjkwRDAxRUU1QzBDMjhEM0Y+XQo+PgpzdGFydHhyZWYKMTMwNDQKJSVF
T0YK
------ =_NEXTPART_FORMSCAPE_MAIL_message101122101615--

Deberá encontrar una herramienta UUDECODE para convertir el ASCII a un archivo válido.

¿En qué sistema operativo o con qué arquitectura de correo (entrega local de Unix, fetchmail, Thunderbird, Outlook, ...)?
Gilles 'SO- deja de ser malvado'

Respuestas:


2

Guarde el correo electrónico en un archivo de texto con la extensión .uuey extraiga el archivo adjunto con un desarchivador.


17

Copie solo el texto codificado en base64 en un nuevo archivo de texto foo.txt.

base64 --decode foo.txt > bar.pdf

Acabo de decodificar un flujo base64 que tenía un bit adicional en el extremo que tuve que eliminar. Parecía como esto: --=_59494bda030d4629113a60ff13935d81--. Antes de eliminarlo, recibí el error: Invalid character in input stream.después de eliminarlo, no hay errores de decodificación y se abrió muy bien.


1

Pude recuperar el archivo usando un decodificador base64 y copiando solo el texto real que era el archivo adjunto codificado, no ninguna de las cosas de encabezado / pie de página circundantes.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.