What command do you use for copying of files from the command line? COPY would be the most obvious answer for single-item copying of files.

For copying multiple directories you would use XCOPY command, since it preserves the attributes as well. What about preserving NTFS extended attributes such as access control lists and alternate data streams? Use Robocopy. It is available as part of Windows Resource Kit, designed to overcome unreliable network conditions or other possible interruptions of services e.g., for copying files to drives mapped across WAN links or via wireless networks.

Robocopy is now a a standard-issue item with Vista, meaning it’s all the easier to get hold of and work with.

Derk Benish, systems engineer in Microsoft’s MSN Search Group, has a simple GUI for Robocopy! Maybe because Robocopy is a command line utility and has not gained as much ground as it should have.

The GUI is divided into six tabs, each dealing with one aspect of the Robocopy command set:

  • Path allows you to set the source and target paths for the copy operation, or use the standard Windows folder-picker to select them manually. The “Map Drive?” box lets you map to a folder on a remote server if needed.
  • Copy Options lets you set all the needed switches for the copy operation. If you don’t know what each switch does, hover your mouse over them for an explanation.
  • Drive Mapping allows you to provide a target server name, username, password and domain if you’re using the drive-mapping option in the Path tab.
  • Filters defines any file-filtering operations (again, as described by the program’s command switches). Hover your mouse over any of the options for an explanation.
  • Logging lets you enable any logging options for Robocopy.
  • Monitoring enables real-time monitoring for the copy operation.

Save the configuration to a script that can be reused, so the GUI doesn’t create a dependency on the GUI in order to make Robocopy functional. Use this GUI to learn how Robocopy works and slowly move to using the command line.

Till now, what did you use to copy files/folders?