2009-07-23 32 views
6

¿Sabes cómo extraer archivos adjuntos de un mensaje de correo electrónico sin formato en Unix? Quiero hacerlo desde script de shell (ksh). El archivo de correo es el correo electrónico sin procesar con encabezados y archivos adjuntos codificados.Extraer archivos adjuntos de correo electrónico en Unix

PD: No puedo usar perl!

Thx.

Respuesta

7

mpack lo hizo por mí! (en realidad, la parte munpack) Exactamente lo que necesitaba: pequeño ejecutable independiente sin extra.

2

Hace mucho tiempo, utilicé metamail para exactamente este tipo de cosas.

ver http://kb.iu.edu/data/aibt.html

M.

+0

Gracias, pero: metamail: No se pudo encontrar final de los encabezados de correo. Estoy en un viejo sistema HP-Ux B11.11 .. – ExpertNoob1

2

me gustaría echar un vistazo a MH y su sucesor, NMH. Desde el FAQ:

El sistema de tratamiento de mensajes MH es un conjunto de los programas de correo electrónico en el dominio público . Si su computadora ejecuta Unix, probablemente pueda ejecutar MH.

La gran diferencia entre MH y más otros "agentes de usuario de correo" es
que se puede utilizar de una MH indicador de UNIX shell. En MH, cada comando es un programa separado , y el shell es utilizado como intérprete. Por lo tanto, toda la potencia de shells Unix (pipes, redirección , historial, alias y
etc.) funciona con MH; no tiene para aprender una nueva interfaz. Otros agentes de correo tienen su propio intérprete de comandos para sus comandos de correo
individuales (aunque el agente de correo electrónico simula un shell Unix).

+0

¡MH está muerto! Su hogar está cerrado: http://www.ics.uci.edu/~mh/. Ni siquiera pude encontrar páginas de manual .. – ExpertNoob1

+0

Editado para hacer referencia a NMH –

+0

No puedo compilar nmh en mi sistema: '( cc -s -o ali ali.o aliasbr.o ../config/version .o ../config/config.o ../mts/libmts.a ../sbr/libmh.a -lm /usr/ccs/bin/ld: símbolos insatisfechos: _filbuf (hace referencia por primera vez en ../ sbr/libmh.a (m_getfld.o)) (código) *** Código de error de salida 1 – ExpertNoob1

2

Otra solución es usar uudeview. Funciona de manera similar al munpack. Sólo tienes que escribir

$ uudeview file.eml

+0

En segundo lugar uudeview porque, a diferencia de munpack, admite archivos que contienen varios correos electrónicos. – dummzeuch

Cuestiones relacionadas