If you want to really go buck wild with command line options then use xxcopy. It is what I use @ bg for our scripted copy needs. Industrial strenght business. This is a "Thank You Jesus" kind of util.
www.xxcopy.com(yeah a command line util with it's own domain name, lol)
Get ready to be knocked out with features: (Try and beat this one para, lol)
Check the full list here:
http://www.xxcopy.com/xxcopy01.htmBelow is a snippet
From: Kan Yabumoto tech@xxcopy.com
To: XXCOPY user
Subject: XXCOPY Command Parameters Reference
Date: 2005-05-02 Revised for ver 2.92.4
====================================================================
Basic Command Parameter Syntax:
XXCOPY source destination (simplified syntax)
In its simplest form, XXCOPY takes two parameters,
from WHERE to WHERE
This very intuitive command syntax has its root in the COPY command
introduced in 1981 as a PC-DOS (MS-DOS) built-in command.
The first parameter is the source specifier and the second one is
the destination specifier. These two parameters must be in this
order. As common to the COPY and XCOPY command syntax, the
destination specifier can be omitted. Then, by default, the
current directory in the current drive becomes the destination.
XXCOPY source [ destination ]
By convention, an optional parameter is denoted in the syntax
definition with a pair of square-brackets surrounding it.
In addition, you may add command switches (which are also called
options) to customize XXCOPY's behaviors. It is the extensive
set of switches that make XXCOPY so versatile and powerful.
Full Command Parameter Syntax:
XXCOPY source [ destination ] [ switches... ]
All switches start with a slash (/) character whereas the source
and the destination specifiers do not have the slash(/) prefix.
The source and the destination specifiers must be separated from
other items in the command line by at least one blank (space or tab)
character. On the other hand, you may omit blank characters between
switches in order to minimize the total length of the command line.
Example:
XXCOPY C:\mydir\ D:\yourdir\ /S /H
Here, "C:\mydir\" is the source specifier and "D:\yourdir\" is
the destination specifier. They do not start with a slash (/).
It has two (/S and /H) switches.
Note that the positions of the switches need not be at the end of
the command line. Switches may begin even before the source specifier.
The order of the switches is not generally important except when
conflicting switches are specified, the rightmost switch will
prevail. More rules for special cases are discussed at the end
of this article. For a complete syntax and semantics for the
source specifier, see XXTB #04.
-------------------------------------------------------------
Caution to DOS novices:
The blank characters (space or tab) act as the delimiter of
the arguments. Therefore, a name with embedded space must
be surrounded by a pair of quotes (") to be kept unbroken.
XXCOPY C:\My Documents\ D:\backup\ // bad
XXCOPY "C:\My Documents\" D:\backup\ // good
This is true for nearly all command line applications.
-------------------------------------------------------------
Once you learn this simple rule, it is quite easy to understand a
long XXCOPY command line.
XXCOPY switches:
Here, a first time XXCOPY user may be overwhelmed by the sheer
number of the switches. Since the power of XXCOPY comes from
these switches, you have to learn to live with them. We try
our best to keep these (still increasing) switches under control.
Since the number of switches far exceeds the available alphabet,
many of the switches use multiple characters. For better or worse,
the syntax adheres to the original XCOPY's syntax very closely.
It is a mixed blessing, for sure. So, when we feel very strongly,
we took liberty in making improvements in a few exceptional cases.
But, overall, if you are very familiar with how XCOPY works, there
will be very little surprise for you.
Let us just take a look at the full list of XXCOPY switches with
a terse comment on each. For most switches, full explanation will
be given later.
for Command Line Syntax XXTB #25
for Command Reference Alphabetic Listing XXTB #26
for Command Reference Functional Classification XXTB #27
for The Wild-Wild-Source Specifier XXTB #28
----- The following switches use file attributes to select files -----
/A Same as /ATA. Copies only files with the archive attribute set.
Doesn't change the attribute.
/M Copies only files with the archive attribute set.
Turns off the archive attribute.
/AT<mask> Selects files by the attribute bits (AHSR).
You may use two or more /AT<mask> switches to specify multiple
attributes required. E.g., /ATA/ATH qualifies files with both
the A(rchive) bit and the H(idden) bits.
Or, you may use one /AT<mask> switch with multiple letters to
select alternative attribute bits to select files. E.g.,
/ATAH qualifies a file which has either A-bit, H-bit or both.
/AX<mask> Excludes files with the specified attribute bits (AHSR).
You may use two or more /AX<mask> switches to specify
attribute bits to exclude files for file operations. E.g.,
/AXA/AXH excludes files with A-bit, H-bit, or both.
Or, you may use one /AX<mask> switch with multiple letters to
exclude files with only the specified combination of attribute
bits. E.g., /AXAH excludes files with both A-bit and H-bit.
Note: The /AT<mask> and /AX<mask> switches have opposite conjugation
rules (the effects of combining attribute bits --- AND and OR).
/A0 Cancels *ALL* /A, /M, /AT, and /AX switches.
----- The following switches modify the file attributes -----
/AA Sets the src file archive bit (without actually copying).
/AZ Clears the src file archive bit (without actually copying).
Note: Both /AA and /AZ implicitly set /H (can be overridden).
/AC Copies specified files irrespective of the archive attribute.
Turns off the archive attribute after XXCOPY is done.
/AN<mask> Sets a new value to file attribute bits (replace the value).
The <mask> value is a combination of letters, ASHR.
/AR<mask> Resets file attribute bits (clears specified bits).
/AS<mask> Sets file attribute bits (sets specified bits).
Note: The <mask> value for /AR and /AS specifies attributes (AHSR)
whose bits are either reset or set respectively to the existing
file attributes. Unspecified attributes bits are kept unchanged.
Note: The /AA, /AN, /AR, /AS and /AZ switches modify the file
attributes without copying the files to the destination,
whereas the /A, /AT and /AX switches select files by the file
attributes for various operations (copy, list, remove, etc.).
----- The following switches use other file attribute bits -----
/H Copies hidden and/or system files also.
/H0 Excludes hidden and/or system files (default).
/Ho Copies hidden and/or system files only.
/R Overwrites read-only files.
/K0 Keeps H-bit and S-bit, sets A-bit, clears R-bit (default).
/K Keeps the source attributes including read-only (same as /KS).
/KS Keeps the source attributes including the read-only bit.
/KD Keeps the attributes of destination (overwritten) file.
/KN Sets the destination attributes to normal (only /A).
(File attributes are discussed in XXTB #06)
----- The following switches are useful for backup and archive -----
/BI Backs up incrementally, different (by time/size) files only.
/BB Backs up brand new files only (does not overwrite existing ones).
/BN Backs up newer files only (includes brand new files).
/Bo Backs up older files only (includes brand new files).
/BX Backs up different-date files (includes brand new files).
/BZ Same as /BZX.
/BZE Backs up equal-size files (includes brand new files).
/BZL Backs up larger-size files (includes brand new files).
/BZS Backs up smaller-size files (includes brand new files).
/BZX Backs up different-size files (includes brand new files).
/BE Backs up exactly the same files(includes brand new files).
/BS Selects exactly the same files (this is useful with /RS).
/BU Standard Backup switch (same as /r/i/bi/q/c/h/e/v/y).
/B0 Undo any of /BI, /BB, /BN, /Bo, /BX, or /BZ switches.
/U Updates the files that already exist in destination.
Note: A "brand new" file refers to a file which exists in the
source directory but not in the destination directory
(Micrososoft's Robocopy call it a "lonely file").
/SP Spans the copy job over multiple destination (new volume).
Note: /SP cannot be used with switches which reference the
destination for file selection --- that is, the /Bxx
(backup) switches, and /U will be disabled by /SP.
That is, the spanning of the destination volume by /SP
assumes the backup operation is a full backup without
referencing the files already on the destination.
----- The following switch adds inclusive alternate templates -----
/IN<tmpl> Includes an alternate filename template (tmpl).
You may specify as many alternate filename patterns as you want.
The template must be for the "Lastname" of the source specifier
(no backslash in the template, but wildcard characters are OK).
----- The following switches exclude directories or files -----
/X<xspec> Adds an exclusion specifier (xspec) (see below for exclusion).
/EX<xlist> Specifies a text file which contains a list of xspecs (see below).