ghostsf

ghostsf

Do what i love and just do it !

mac微信聊天记录附件清理归档備份方案

0x01#

image.png

微信聊天記錄中產生的文件,圖片以及音視頻都會緩存在本地磁碟,長時間不清理,就會佔用很大存儲空間。

image.png

雖然微信 mac 端版本有一個清理空間的功能,可以單獨直接刪除與某一個人或群的所有聊天文件,但是是直接刪除,沒得選擇和備份的機會。

這個事情就很尷尬了。網上搜了一圈也沒找到比較好的清理歸檔方案。大多是教你怎麼清理掉釋放空間,沒什麼意義。

0x02#

清理比較簡單,更想要的是能夠歸檔備份,因為有些聊天文件,會比較重要或者後面真的會有需要。聊天的文字倒不會佔用多大空間,主要是緩存的各種文件。

如果只是把本地微信緩存目錄直接同步到某個同步盤或者 nas 之類的,也不能很好地歸檔管理。

這裡簡單介紹一個方案吧。

寫一個簡單的 shell 腳本,根據文件時間篩選需要歸檔的比較舊的文件。

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

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。