ghostsf

ghostsf

Do what i love and just do it !

mac微信チャット履歴添付ファイルの整理・アーカイブ・バックアップ方案

0x01#

image.png

微信チャット履歴から生成されるファイル、画像、音声および動画はローカルディスクにキャッシュされます。長期間クリーンアップしないと、大きなストレージスペースを占有します。

image.png

微信の mac 版には、特定の人やグループとのすべてのチャットファイルを直接削除できるスペースクリーンアップ機能がありますが、これは直接削除するため、選択やバックアップの機会がありません。

これは非常に困ったことです。ネットで調べても、良いクリーンアップアーカイブの方法は見つかりませんでした。ほとんどはスペースを解放する方法を教えるだけで、あまり意味がありません。

0x02#

クリーンアップは比較的簡単ですが、アーカイブバックアップができることが重要です。なぜなら、いくつかのチャットファイルは重要であったり、後で本当に必要になることがあるからです。チャットのテキストはそれほどスペースを占有しませんが、主にキャッシュされたさまざまなファイルが問題です。

もしローカルの微信キャッシュディレクトリをそのまま同期ドライブや nas などに同期するだけでは、うまくアーカイブ管理できません。

ここで簡単な方法を紹介します。

ファイルの時間に基づいてアーカイブが必要な古いファイルをフィルタリングする簡単なシェルスクリプトを書きます。

Mac の微信チャットファイルディレクトリは:~/Library/Containers/com.tencent.xinWeChat/Data/Library/Application\ Support/com.tencent.xinWeChat/2.0b4.0.9

その後、コンピュータにログインした微信アカウントごとに、id ディレクトリが生成されます。例えば:
fc4cea7edb2dde38c6ba91c9f1a5f288

このディレクトリ内のMessage/MessageTempには、各チャットユニットによって生成されたチャットファイルがあります。

このディレクトリ内で検索フィルタリングします:
find ./ -mtime "+$clean_days"

このコマンドは、clean_days 日を超えるファイルをフィルタリングできます。これらのファイルを nas や他のストレージドライブにアーカイブできます。

find ./ -mtime "+$clean_days" -exec sh -c '
  mkdir -p "$0/${1%/*}"
  mv -v "$1" "$0/$1"
' "$backupDir" {} \;

ここでは、フィルタリングされたファイルをバックアップドライブに同期し、ファイルの階層ディレクトリを作成します。この階層ディレクトリの作成も重要で、後でこれらのファイルを復元して検索するのに便利です。

backupDir バックアップディレクトリで、私は簡単に afp を利用して nas 上の共有フォルダをマウントしました。
関連知識については、https://support.apple.com/zh-cn/HT202181 を参照してください。

ここに参考のためのマウントコマンドを貼ります:
mount_afp afp://username:password@host:port/volume backupDir

これで、クリーンアップ、アーカイブ、バックアップ復元ができます。

効果を見てみましょう:

image.png

image.png

必要に応じて、時間帯や他のフィルタ条件でアーカイブできます。

0x03#

rsync などのリモート同期も可能ですが、相対的にあまり柔軟ではないかもしれません。しかし、今後さらに研究して改善することもできます。

0x04#

完全なスクリプトコードやプログラムが必要な方は、abitmean の公式アカウントをフォローして、メッセージを送ってリクエストしてください。😝

abitmean

読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。