Как прочитать .msg файлы Outlook Express в Linux?

Аватар пользователя admin

Самый простой способ - это конвертировать .msg файлы текстовый .eml формат. Тогда можно будет легко прочитать содержимое .msg файлов.

Для конвертации нам понадобится ruby и пакет rubygems. В CentOS или в Debian/Ubuntu всё это входит в стандартный дистрибутив.

Для CentOS:

# yum install gubygems

 

Для Debian/Ubutnu:

# apt-get install rubygems gem

 

И затем для любого дистрибутива:

# gem install ruby-msg

Данная команда скачает из репозитория gem'ов нужный и установит его в систему.

Далее. Допустим, ваш .msg файл называется test.msg. Необходимо вызвать команду:

$ mapitool -i test.msg

которая создаст в этом же каталоге текстовый файл test.eml, который затем можно будет прочитать. Команда gem install ruby-msg обычно кладёт команду mapitool в /usr/local/bin, так что озаботьтесь, чтобы в переменной окружения PATH у вас был путь до /usr/local/bin или вызывайте команду mapitool с полным путём.

Дополнение от 28.12.2015


На некоторых файлах, вы можете получить ошибку такого вида:

/usr/local/share/gems/gems/ruby-msg-1.5.2/lib/mapi/mime.rb:109:in `join': incompatible character encodings: UTF-8 and ASCII-8BIT (Encoding::CompatibilityError)


Вот рецепт, который должен вам помочь. В файле /usr/local/share/gems/gems/ruby-msg-1.5.2/lib/mapi/mime.rb в строке 108 исправьте выражение:

part.to_s(opts)

на

part.to_s(opts).encode("UTF-8", :invalid=>:replace, :undef => :replace, :replace => "")

 

0
Ваш рейтинг: Нет