|
|
ROBOCOPY.exe (Resource Kit)
Robust File and Folder Copy.
By default Robocopy will only copy a file if the source and destination have
different time stamps or different file sizes.
Syntax ROBOCOPY source_folder destination_folder [file(s)_to_copy] [options] Key file(s)_to_copy : A list of files or a wildcard. (defaults to copying *.*) Source options /S : Copy Subfolders /E : Copy Subfolders, including Empty Subfolders. /COPY:copyflag[s] : What to COPY (default is /COPY:DAT). (copyflags : D=Data, A=Attributes, T=Timestamps). (S=Security=NTFS ACLs, O=Owner info, U=aUditing info). /COPYALL : Copy ALL file info (equivalent to /COPY:DATSOU). /NOCOPY : Copy NO file info (useful with /PURGE). /A : Copy only files with the Archive attribute set. /M : like /A, but remove Archive attribute from source files. /LEV:n : only copy the top n LEVels of the source tree. /MAXAGE:n : MAXimum file AGE - exclude files older than n days/date. /MINAGE:n : MINimum file AGE - exclude files newer than n days/date. (If n < 1900 then n = no of days, else n = YYYYMMDD date). /FFT : assume FAT File Times (2-second granularity). /256 : turn off very long path (> 256 characters) support. Copy options /L : List only - don't copy, timestamp or delete any files. /MOV : MOVe files (delete from source after copying). /MOVE : Move files and dirs (delete from source after copying). /Z : copy files in restartable mode (survive network glitch). /B : copy files in Backup mode. /ZB : use restartable mode; if access denied use Backup mode. /IPG:n : Inter-Packet Gap (ms), to free bandwidth on slow lines. /R:n : number of Retries on failed copies - default is 1 million. /W:n : Wait time between retries - default is 30 seconds. /REG : Save /R:n and /W:n in the Registry as default settings. /TBD : wait for sharenames To Be Defined (retry error 67). Destination options /A+:[R][A][S][H] : set file Attributes on destination files - add. /A-:[R][A][S][H] : set file Attributes on destination files - remove. /FAT : create destination files using 8.3 FAT file names only. /CREATE : CREATE directory tree structure + zero-length files only. /PURGE : delete dest files/folders that no longer exist in source. /MIR : MIRror a directory tree - equivalent to /PURGE plus all subfolders (/E) Logging options /L : List only - don't copy, timestamp or delete any files. /NP : No Progress - don't display % copied. /LOG:file : output status to LOG file (overwrite existing log). /LOG+:file : output status to LOG file (append to existing log). /TS : include source file Time Stamps in the output. /FP : include Full Pathname of files in the output. /NS : No Size - don't log file sizes. /NC : No Class - don't log file classes. /NFL : No File List - don't log file names. /NDL : No Directory List - don't log directory names. /TEE : output to console window, as well as the log file. /NJH : No Job Header. /NJS : No Job Summary. Repeated Copy Options /MON:n : MONitor source; run again when more than n changes seen. /MOT:m : MOnitor source; run again in m minutes Time, if changed. /RH:hhmm-hhmm : Run Hours - times when new copies may be started. /PF : check run hours on a Per File (not per pass) basis. Job Options /JOB:jobname : take parameters from the named JOB file. /SAVE:jobname : SAVE parameters to the named job file /QUIT : QUIT after processing command line (to view parameters). /NOSD : NO Source Directory is specified. /NODD : NO Destination Directory is specified. /IF : Include the following Files. Advanced options you'll probably never use /XO : eXclude Older - if destination file exists and is the same date or newer than the source - don't bother to overwrite it. /XC | /XN : eXclude Changed | Newer files /XX | /XL : eXclude eXtra | Lonely files and dirs. An "extra" file is present in destination but not source, excluding extras will delete from destination. A "lonely" file is present in source but not destination excluding lonely will prevent any new files being added to the destination. /IS : Overwrite files even if they are already the same. /XF file [file]... : eXclude Files matching given names/paths/wildcards. /XD dirs [dirs]... : eXclude Directories matching given names/paths. XF and XD can be used in combination e.g. ROBOCOPY c:\source d:\dest /XF *.doc *.xls /XD c:\unwanted /S /MAX:n : MAXimum file size - exclude files bigger than n bytes. /MIN:n : MINimum file size - exclude files smaller than n bytes. /IT : Include Tweaked files. /XJ : eXclude Junction points. (normally included by default). /MAXLAD:n : MAXimum Last Access Date - exclude files unused since n. /MINLAD:n : MINimum Last Access Date - exclude files used since n. (If n < 1900 then n = n days, else n = YYYYMMDD date).
/XA:[R][A][S][H] : eXclude files with any of the given Attributes /IA:[R][A][S][H] : Include files with any of the given Attributes /X : report all eXtra files, not just those selected & copied. /V : produce Verbose output log, showing skipped files. /ETA : show Estimated Time of Arrival of copied files.
Syntax on this page is for the XP
and .Net Version of Robocopy (XP010)
The NT 4 and Windows 2000 resource kits
include Robocopy
1.95 but I recommend you download
the XP version which fixes a number of bugs - it runs fine on NT/2K.
Robocopy does not run on Windows 95, or NT 3.5. (RoboCopy is a Unicode application).
ROBOCOPY will accept UNC pathnames.
Examples:
:: Copy files from one server to another
ROBOCOPY \\Server1\reports \\Server2\backup *.doc /S /NP
:: List all files over 32 MBytes in size
ROBOCOPY C:\work\ /MAX:33554432 /L
:: Move files over 14 days old
ROBOCOPY C:\work\ C:\destination\ /move /minage:14
:: Note the MOVE option will fail if any files are open and locked.
:: The script below copies data from FileServ1 to FileServ2, the destination
holds a full mirror (all files), but when run repeatedly will only copy changed
files.
(Changed meaning different time stamps or different sizes)
@ECHO OFF
SETLOCAL
SET _source=\\FileServ1\e$\users\
SET _dest=\\FileServ2\e$\BackupUsers\
SET _what=/COPYALL /B /SEC /MIR
:: /COPYALL :: COPY ALL file info
:: /B :: copy files in Backup mode.
:: /SEC :: copy files with SECurity
:: /MIR :: MIRror a directory tree
SET _options=/R:0 /W:0 /LOG:MyLogfile.txt /NFL /NDL
:: /R:n :: number of Retries
:: /W:n :: Wait time between retries
:: /LOG :: Output log file
:: /NFL :: No file logging
:: /NDL :: No dir logging
ROBOCOPY %_source% %_dest% %_what% %_options%
"The first 90% of a project takes 90% of the time, the
last 10% takes the other 90% of the time" - Murphy's
Law
Related Commands:
COPY - Copy one or more files to another location
SCOPY - Copy complete with NTFS Security Permissions
XCOPY - Copy files and folders
Fcopy - File Copy for MMQ (copy changed files & compress. (Win
2K ResKit)
Permcopy - Copy share & file ACLs from one share to another. (Win
2K ResKit)
Q323275 - Copy Security
information (/SECFIX)
Jsiinc.com - Using robocopy
for Directory Replication.
Equivalent Linux BASH commands:
rsync - Remote file copy (Synchronize file
trees)