概要
Microsoft OfficeはMac版も開発されているため、MacでもメーラーのOutlookを利用出来ます。しかし、Windows版と比較すると実装されていない機能が頻繁に存在します。特にバックアップに用いる機能についてはとても貧弱です。今は昔、以下の記事でOutlook for Macのバックアップと復元について調査した内容を投稿しました。この時の内容を参考にバックアップツールをBashで実装し、簡単にバックアップ出来る様にしました。
環境情報
以下の環境を用いて実装しています。
- macOS Sonoma 14.5
- Outlook for Mac 16.86.3
- Bash 5.2.26
ツールの実装
ツールと言っても、単なるスクリプトファイルで、以下の様に実装しました。
#!/usr/bin/env bash
filename="outlook_backup_$(date "+%-y%m%d%H%M%S").tgz"
echo "Back up Outlook..."
cd /Users/$USER/Library/Group\ Containers/UBF8T346G9.Office/Outlook/Outlook\ 15\ Profiles/Main\ Profile/ && tar cvzf $HOME/${filename} Data &> /dev/null
echo "Finished!(${filename} was created.)"
特別難しいことはやっておらず、Outlookのメールや仕分けルールが格納されているディレクトリ配下でtarコマンドを実行し、アーカイブファイルをホームディレクトリ上に保存するという実装です。アーカイブファイルのファイル名にはdateコマンドの実行結果を用いてタイムスタンプが入ります。tarコマンドの実行結果が大量に出力されてしまうため、標準出力、標準エラー出力への出力は捨てています。
実行結果
実際に実行してバックアップファイルが作成されていることが確認出来ました。
$ ./outlook_backup.sh
Back up Outlook...
Finished!(outlook_backup_240703221859.tgz was created.)
$ ls -alh outlook_backup_240703221859.tgz
-rw-r--r-- 1 user staff 265M 7 3 22:19 outlook_backup_240703221859.tgz
まとめ
Outlook for Macのデータディレクトリは階層が深いため、バックアップ作業が煩雑でした。今回実装したツールでバックアップ作業が楽になりました。Crontabを利用して定期実行出来る様にするのも良いなと思っています。
Reference