# [メタ情報] # 識別子: ITスクリプト管理フォルダをGoogleDriveへ一方向同期する_exe # 補足: # [/メタ情報] 要約: この設定は、Mac mini M1上の「ITスクリプト管理」ディレクトリの内容を、外部SSD上のGoogle Driveにある同名ディレクトリへ一方向同期する自動化システムです。`m1_hqsync.sh`スクリプトは、rsyncコマンドを使用し、本体のディレクトリ(本尊)から外部SSDのディレクトリへ、属性を維持しつつ差分更新と削除反映を行うミラーリングを実行します。同期完了時には「本社(GoogleDrive)への一方向同期が完了しました。」と報告します。`com.XXXXXX.hqsync.plist`ファイルは、macOSのLaunch Agentとしてこのスクリプトを登録する設定です。これにより、監視対象の「ITスクリプト管理」ディレクトリに変更があった際、`m1_hqsync.sh`が自動実行されるようになります。スクリプトの標準出力とエラー出力は、それぞれ`/tmp/hqsync.log`と`/tmp/hqsync_error.log`に記録されます。これにより、重要なスクリプトファイルの確実なバックアップと管理が実現されます。 /Users/XXXXXX/scripts/m1_hqsync.sh ``` #!/bin/bash # 同期元(本尊) SOURCE_DIR="/Users/XXXXXX/ITスクリプト管理/" # 同期先(資料室) DEST_DIR="/Volumes/NO4_SSD/GoogleDrive/ITスクリプト管理/" # [実行] 真のホワイトリスト同期 # --delete-excluded を加えることで、Drive側にある「許可外のファイル」を強制削除します rsync -auv --delete --delete-excluded \ --include='*/' \ --include='*.py' \ --include='*.sh' \ --include='*.applescript' \ --include='*.txt' \ --include='*.md' \ --include='*.json' \ --include='*.csv' \ --include='*.plist' \ --exclude='*' \ "$SOURCE_DIR" "$DEST_DIR" echo "------------------------------------------" echo "【報告】不要な過去ファイルを一掃し、本社の純浄化同期を完了しました。" echo "------------------------------------------" ``` ~/Library/LaunchAgents/com.XXXXXX.hqsync.plist ``` Label com.XXXXXX.hqsync ProgramArguments /bin/bash /Users/XXXXXX/scripts/m1_hqsync.sh WatchPaths /Users/XXXXXX/ITスクリプト管理/ StandardOutPath /tmp/hqsync.log StandardErrorPath /tmp/hqsync_error.log ```