An efficient and easy-to-use utility to compare/synchronize/mirror folder contents.
MIT License
A simple and fast utility to compare/synchronize/mirror folder contents, completely free and open-sourceTM!
Demo
Usage:
directsync [-h] [-add] [-rm] [-ovr] [-mirr] [-trash] [-cache]
[-latest] [-dry] [-no-bar]
src-path dst-path
positional arguments:
src-path The path of the source directory.
dst-path The path of the destination directory.
optional arguments:
-h, --help show this help message and exit
-add, --add-missing Copy files from source which are absent in
destination.
-rm, --remove-extra Remove the files from destination which are absent in
source.
-ovr, --overwrite-content
Overwrite the files having same name but different
content.
-mirr, --mirror-contents
Make the destination directory exactly same as the
source. Shorthand for `-add -rm -ovr`.
-trash, --use-trash Send to trash/recycle bin while deleting/overwriting.
-cache, --use-cache Whether to use previously cached comparison-check
result from disk.
-latest, --preserve-latest
Whether to use the last modified time while
comparing files with different content.
-dry, --dry-run Just simulate and report the file operations that will
be performed with the current configuration.
-no-bar, --hide-progress-bar
Whether to hide the progress bar or not. Will result
in a huge speedup iff the 2 directories are structured
very differently.
Installation:
pip install directsync
ToDo:
ignore-pattern
option to let the user ignore certain files based on the regex pattern provided.tox
and Travis CI
.simulate
option.use-trash
option to send to recycle bin instead of delete/overwrite.cache
option to cache the results of the previous difference check to disk.preserve-latest
option: Among the 2 files, the one with the latest modification date should be preserved.