Импорт электронных писем из кеша Claws IMAP

722
calandoa

Я пытаюсь импортировать учетную запись IMAP, состоящую из множества папок, из внутреннего кэша Claws Mail. К сожалению, Claws не может экспортировать все папки, выбрав корневую учетную запись.

При проверке внутренней папки кэша Claws каждое письмо представляет собой простой текстовый файл, который называется следующим образом:

base_path/My Account/Folder ABC/1 base_path/My Account/Folder ABC/2 base_path/My Account/Folder ABC/3 base_path/My Account/Folder ABC/4  base_path/My Account/Folder DEF/1 base_path/My Account/Folder DEF/2 base_path/My Account/Folder DEF/3  base_path/My Account/Folder X/etc... 

Я пытался импортировать эту структуру с помощью различных программ чтения почты, таких как KMail и Balsa, но каждый импорт не удался. Я просто хотел бы, чтобы все эти письма были легко доступны и читабельны.

Какой инструмент в Linux я могу использовать для импорта такой структуры?

1

1 ответ на вопрос

2
grawity

Поскольку это одно сообщение на сообщение, содержащее только исходные данные в формате RFC 822, его легко преобразовать в макет Maildir ++, просто переименовав файлы. После этого он должен быть доступен для чтения как минимум Balsa и Mutt, а также большинству серверов IMAP (если вы можете загружать файлы напрямую).

#!/usr/bin/env bash  inputroot=~/.claws-mail/imapcache  output=~/claws.maildir  find "$inputroot/" -mindepth 2 -type d | while read -r srcdir; do # Maildir++ uses <dir>/.a.b.c/ for subfolder hierarchy; # the "INBOX" itself is just <dir>/, having <dir>//, but it # is not used during this conversion, which puts all mail in subfolders. folder=$ folder=/$ folder=$ folder=$ dstdir=$output/$folder find "$srcdir" -maxdepth 1 -type f -not -name '.*' | while read -r srcfile; do if [ ! -d "$dstdir/cur" ]; then echo "creating: $dstdir" mkdir -p "$dstdir/cur" "$dstdir/new" "$dstdir/tmp" fi # in cur/, filenames are <unique>:2,<flags> (S for "seen") dstname="claws.$.$(stat -c %Y "$srcfile"):2,S" cp -a "$srcfile" "$dstdir/cur/$dstname" done done 

Похожие вопросы