OneDriveの同期問題を解決するためのPowerShellスクリプト
- 🔁 OneDriveのリセット処理
- 🔍 ファイル名と同期パスのチェック
- 🧹 Office Upload Centerのキャッシュクリア
- 📝 詳細なログ出力
.\OneDriveRefresher.ps1# OneDriveのリセット(デフォルト)
.\OneDriveRefresher.ps1 -Mode Reset
# フォルダ分析モード(上位20フォルダを表示)
.\OneDriveRefresher.ps1 -Mode Analyze -TopCount 20| パラメータ | 説明 | デフォルト値 | 
|---|---|---|
| ResetWaitTime | リセット後の待機時間(秒) | 30 | 
| SyncFolderPath | 同期フォルダのパス | %USERPROFILE%\OneDrive | 
| ClearOfficeCache | Office cacheをクリアするか | false | 
| LogPath | ログファイルの保存先 | %USERPROFILE%\OneDriveRefresher.log | 
| Mode | 実行モード(Reset/Analyze) | Reset | 
| TopCount | 分析モード時の表示フォルダ数 | 10 | 
- パス長のチェック(260文字制限)
- 無効な文字の検出 (<>:"|?*)
- 既存のOneDriveプロセスの終了
- リセットコマンドの実行
- 自動再起動の確認と必要に応じた手動起動
- フォルダごとのファイル数を集計
- ファイル数の多い順にランキング表示
- 表示件数のカスタマイズ可能
- タイムスタンプ付きの詳細なログ
- コンソールとファイルの両方に出力
- 管理者権限が必要です
- 実行前にOneDriveの重要なファイルをバックアップすることを推奨します
- Windows 10/11
- PowerShell 5.1以上
- 管理者権限