martes, noviembre 04, 2008

Convertir archivos .msg de outlook a .eml para Mac

Después de pelear durante horas para rescatar unos antiguos correos de mi jefe que estaban en formato .msg de Outlook 2003 comparto aquí el pequeño script que me cree.

El script recorre todas las carpetas recursivamente buscando archivos .msg  y creando con  archivos .eml compatibles con thunderbird, mail para mac, entourage,...

Ventajas: no modifica los archivos, recupera los adjuntos (doc, imágenes, txt,...)
Problemas: se pierden los adjuntos, ningún archivo puede contener la cadena msg.

Puedes descargar el archivo de aquí. Las instrucciones para la instalación y descarga de programas necesarios aparecen en el propio archivo.

#!/bin/bash

# Script para la conversión de archivos .msg de outlook a .eml
#
# Recorre recursivamente el directorio indicado por parámetro creando por cada archivo .msg
# un archivo compatible .eml en la misma carpeta

# Version: 0.1
# Licencia: GPL (http://es.tldp.org/Otros/gples/gples.html)
# Autor: Gonzalo Cao Cabeza de Vaca
# Mailto: gonzalo(punto)cao@gmail(punto)com

# INSTALACIÓN
# Este script precisa del paquete wine y del software ruby-msg (http://code.google.com/p/ruby-msg/)

# 1. Si aún no lo tienes instala el wine (si tienes ubuntu o debian: $sudo apt-get install wine)
# 2. Descarga la versión stand-alone del software ruby-msg (http://ruby-msg.googlecode.com/files/msgtool-1.3.1-mswin32-stand_alone.zip)
#    y descomprimela en cualquier carpeta de tu disco duro
# 3. Configura a continuación la ruta al ejectuable en la carpeta en la que has guardado ruby-msg

ruta_ejecutable=/home/gonzalo/usr/ruby-msg/msgtool.exe

# USO
# ./msg2eml.sh ruta_a_carpeta

# EJEMPLO
# ./msg2eml.sh /home/gonzalo/correos_antiguos

# PROBLEMAS
# Ninguna de las subcarpetas debe contener en su nombre la cadena "msg", el script fallaría.
# De existir debe renombrarse antes de ejecutar el script

find $1 -type f -name "*.msg" | while read FILE
do
newname=`echo $FILE | sed s/.msg/.eml/`
echo $newname
wine $ruta_ejecutable "$FILE" > "$newname"
done

4 comentarios:

  1. Este comentario ha sido eliminado por un administrador del blog.

    ResponderEliminar
  2. Ha oído un programa interesante - como reparar archivos .wab en el Internet. La utiliza me ha gustado y yo he cargado de el Internet. El instrumento ha determinado mis problemas con files. Luego el programa tengo muchos posibilidades y gratis como recordo.

    ResponderEliminar
  3. Ha oido un programa interesante - reparar libreta de direcciones .wab en el Internet. La utiliza me ha gustado y yo he cargado de el Internet. El instrumento ha determinado mis problemas con files. Luego el programa tengo muchos posibilidades y gratis como recordo.

    ResponderEliminar
  4. Hola, el script no esta mas, podras subirlo nuevamente? lo que necesito es convertir tal cual lo indicas pero para windows.

    Muchas Gracias

    ResponderEliminar