A python script that keeps incremental saves and maintains a mirrored backup folder, as well as a directory for recently deleted material

After the end of the Spring semester of 2010, I decided that it was no longer practical to continue trying to build new functionality into¬† the .bat file I was using as my backup script when I worked at school, and I decided to do a complete redesign of my backup script, using Python.¬† This was the result, I still occasionally add to and improve it, but I’ve been using it for the past year with no major issues or flaws.

setup

Features:

  • Easily setup multiple backup drives
  • Keeps preferences in your roaming profile, stays with you if you switch computers at school or the office
  • Keeps dated backup copies of all changed files on each backup
  • Keeps a copy of any deleted files in a separate directory
  • Only copies newer, updated files, doesn’t waste time copying unchanged files
  • Setup UI lets you quickly create a shortcut that the user can use to run the backup

shortcut

Planned Improvements:

  • Implement a system that allows for multiple backup setups on one profile
  • Give the user more control over where backup files go
  • Give the user control over how many backups they wish to keep
  • Give the user control over how long they wish to keep backups