dirsync - Syncronize two directories rapidly
$Id: dirsync,v 1.15 2007/08/04 07:33:29 rob Exp $
# Rebuild the source cache for rapid updating. dirsync [ options ] --rebuild <source_dir> # Quickly update source to destination. dirsync [ options ] <source_dir> <dest_dir> -or- # Mirror source to destination ignoring cache. # (almost like: cp -a <source_dir>/. <dest_dir>/. # except files may be deleted in destination # to ensure exact consistency with source.) dirsync [ options ] --nocache <source_dir> <dest_dir>
This is just a wrapper script for easy commandline access to File::DirSync. It mirrors all files and symlinks recursively from source_dir to dest_dir.
Show this help screen
Rebuilds the dirsync cache on source_dir. Write access to source_dir is required to rebuild. If dest_dir is not specified when this option is, then nothing is mirrored to anywhere after the cache is rebuilt.
Local directory only, no recursion.
When mirroring from source_dir to dest_dir, do not assume that --rebuild has built the dirsync cache on source_dir already. It is ignored and all files are mirrored. This option will significantly slow the performance of the mirroring process.
Avoid recursing into directories named <dir> within the entire descent of source_dir. This option applies to both the --rebuild option and the mirroring process if a second directory is supplied. It may be specified multiple times to ignore several directories.
If this option is used, this will be the only node checked for changes, but the cache will still be rebuilt all the way to source_dir. This only node must always be a subdirectory or a file within a subdirectory of source_dir. This option only applies to the --rebuild option. It may be specified multiple times to rebuild several nodes.
Enable clock skew protection. If a file or directory is found within source_dir modified in the future, the timestamp will be reset back to "now" to prevent corrupting the directory cache into the future.
If this option is used, <lockfile> will be used to ensure that only one dirsync process is running at a time. If another process is concurrently running, this process will immediately abort without doing anything. If <lockfile> does not exist, it will be created.
If this option is specified, then dirsync will spend <percent> % of the time sleeping instead of syncing. If <ops> is specified, it will perform <ops> disk operations in between each pause cycle. If this option is not specified, dirsync will burn continually until the process has completed.
If this option is specified, the process name will be modified to show the current operation. This can be useful for viewing or monitoring the progress.
Show extra details.
Rob Brown, email@example.com
Copyright (C) 2001-2006, Rob Brown, firstname.lastname@example.org
All rights reserved.
This may be copied, modified, and distributed under the same terms as Perl itself.