web-dev-qa-db-ja.com

kmailからthunderbirdへの移行

私はkmailインターフェースが好きですが、何年も問題があり、ここ数日で使用できなくなりました。ロックしたりクラッシュしたりし続け、「ネットには解決策がありません」。私はそれにうんざりしているので、詳細には触れません。

設定をリセットしようとしました( https://forum.kde.org/viewtopic.php?f=20&t=97754 )。 Thunderbirdを移動したいのですが、メッセージ/アカウント/フィルターをインポートする方法が見つかりませんでした。Thunderbidでは、[ツール] [インポート]、[次へ]で[キャンセル]のみの空のウィンドウが表示されます。 kmailから、私はすべてをZipエクスポートファイルにエクスポートすることができましたが、どうすればいいのかわかりません。

Thunderbirdのインポートアドオンを検索しましたが、成功しませんでした。/cur /ディレクトリを手動で移動するように言うメッセージを読んだことがありますが、それはメッセージ専用ですよね?何かアドバイス ?

1
dargaud

私は最終的に解決策を見つけました。 Timothy Truckleが書いたように、エクスポート/インポートプラグインを使用しましたが、その前にメールファイルの名前を変更する必要がありました。そうしないと、インポートは空のディレクトリのみを表示します。

最初に、kmailがメッセージを保存する場所を見つけます(複数のアカウントがある場合は、複数の場所がある場合があります)。

$ ls -1d ~/.local/share/local-mail ~/.local/share/*/local-mail
~/.local/share/0/local-mail
~/.local/share/1/local-mail
~/.local/share/local-mail

次に、これらのディレクトリのそれぞれで、次のすべてを実行します。

# This performs a backup
Zip -r ~/mail.backup.Zip ~/.local/share/local-mail
cd ~/.local/share/local-mail
# This renames the files so that the import will identify them properly
find -type f -exec mv -v '{}' '{}.eml' \;

ここで停止してThunderbirdのディレクトリをインポートできますが、.Friends.directoryや.Family/curなど、空のディレクトリが多く、ディレクトリの名前が間違っているため、少しスクリプトを作成することで最初にクリーンアップできます。

# Remove empty directories
find -type d -exec rmdir -v '{}' \;
# Move the files up from cur/, tmp/ and new/
find -type d -name cur -exec bash -c 'for dir; do mv -v "$dir"/* "$(dirname "$dir")/"; done' bash {} +
find -type d -name tmp -exec bash -c 'for dir; do mv -v "$dir"/* "$(dirname "$dir")/"; done' bash {} +
find -type d -name new -exec bash -c 'for dir; do mv -v "$dir"/* "$(dirname "$dir")/"; done' bash {} +
find -type d -exec rmdir -v '{}' \;
find -type d -iregex "\..*\.directory"
# Now move ../.something.directory into ../something (which may not exist)
find -depth -type d -iregex "\..*\.directory" -exec bash -c 'for dir; do A=$(echo $dir | sed -e "s#\(.*\)\.\([^/]*\).directory#\1\2#"); mv -v "$dir"/* "$A/" ; done' bash {} +
# if there are still .something.directory, just rename them manually to 'something' (this line won't do it automagically):
find -type d -iregex "\..*\.directory"

最後に、Thunderbirdで、ローカルフォルダーの下にディレクトリIMPORTを作成し、それを選択します(右クリックでは十分ではないことを忘れないでください!)、右クリック、[ImportExportTools]、[ディレクトリからのすべてのメッセージ、およびそのサブディレクトリ]、しばらく動作させます。

上記のすべてを実行するスクリプトを書くことはできましたが、ようやくメールを移動できたので、うんざりしています。

2
dargaud

Thunderbirdには、KMailフォルダー構造からメールメッセージをインポートできるexport/importプラグインがあります。 https://addons.mozilla.org/de/Thunderbird/addon/importexporttools/

残念ながら、フォルダ構造とメールメッセージを同時にインポートすることはできません(少なくとも私はできませんでした)。

誤ってフォルダ構造をインポートしましたが、メールがなかったため、削除されました。残念ながら、それを再現できなかったため、TBのフォルダー構造を最初から再作成する必要がありました。

次に、各フォルダのメールメッセージを個別にインポートする必要があります。 TBインポート/エクスポートプラグインのメニューには「サブフォルダー付き」エントリがありますが、それらは機能しませんでした。

2
Timothy Truckle