lisekarimi/drivesync

๐Ÿ”„Script to sync local folders to OneDrive, skipping cache and large files

โ˜… 0Forks 0PowerShellGitHub โ†—Compare

Project website โ†—

onedrive

README

DriveSync - Local to OneDrive Sync

Automatically sync local folders to OneDrive while skipping cache and large files.

๐Ÿš€ Quick Start

  1. Configure paths in config.ps1:

    $SourcePath = "D:\workspace"
    $OneDrivePath = "C:\Users\YourUsername\OneDrive\YourBackupFolder"
    $LogPath = "D:\Logs\drivesync_log.txt"
  2. Run manual sync:

    make sync
  3. Setup automatic scheduling:

    # Run PowerShell as Administrator
    .\setup_drivesync_scheduler.ps1

๐Ÿ“ Files

  • drivesync.ps1 - Main sync script
  • config.ps1 - Your personal paths
  • setup_drivesync_scheduler.ps1 - Creates Windows scheduled tasks
  • Makefile - Simple commands (make sync, make log, make schedule, make help)

โฐ Schedule

Default: Runs automatically 4 times daily at 11:00 AM, 3:00 PM, 6:00 PM, 8:00 PM.

To customize times: Edit the trigger times in setup_drivesync_scheduler.ps1 before running:

$trigger1 = New-ScheduledTaskTrigger -Daily -At "09:00"  # Change to your preferred time
$trigger2 = New-ScheduledTaskTrigger -Daily -At "13:00"  # Change to your preferred time
# etc.

๐Ÿ“‹ Commands

make sync      # Run sync now
make log       # View last 20 log entries
make schedule  # Setup automatic scheduling (requires Admin)
make help      # Show all commands

๐Ÿ“Š Monitoring

  • Sync logs: D:\Logs\drivesync_log.txt
  • Task status: Get-ScheduledTask -TaskName 'DriveSync*'
  • Task history: Task Scheduler GUI (taskschd.msc)

โš ๏ธ Requirements

  • Windows PowerShell
  • OneDrive desktop app installed
  • Administrative privileges (for scheduler setup only)

Your workspace is now automatically backed up to OneDrive!

Contributors

lisekarimi

Issues