XCopy is one of the most useful Windows command line tools, an easy way to copy files, folders, folder trees and more. There’s support for copying only files which have changed, and if a network connection fails then XCopy can even resume later, just where it left off.
The program is still a little basic, but if you need more power then there’s always XXCopy, a free-for-personal-use tool which supports all the usual XCopy features, and then adds a whole lot more.
For example, a key part of any file backup plan comes in choosing which files to copy, and XXCopy’s extensive date/ time filters means you’ve plenty of choice. There are options to copy older or newer files; anything that was changed on, before or after a given date; or anything which was changed on, before or after <n> days ago. These comparisons can use the last write, last access or creation times, and you get various time zone options, too.
Maybe you’re trying to synchronise folders? XXCopy is just as flexible here. Files can be removed according to a host of rules, perhaps deleting a source file after it’s copied, or a destination file which isn’t present in the source.
There’s good support for versioning. If a file changes, it doesn’t have to be copied over the old one: you can retain as many versions as you need.
Various “flattening” options can take all the files in a folder tree and copy them to a single destination folder. The files are combined with their original folder names so you can see where they came from, and there are even some rebuild switches to recreate the original tree from a flattened folder.
Quota support means XXCopy can stop its operations once a quota is met. You could tell the program to quit after a file or byte count has been reached, for example, or disk free space drops below a certain amount.
There’s also strong support for handling and transferring all kinds of low-level file system details (short file names, NTFS security information, reparse points, hard links and more).
Normally you’d expect a command line program to be scrolling some endless report while all this is happening, but of course XXCopy offers a vast amount of control here, too. A progress bar can pop up, with a Halt/ Abort button; there are various switches to control what – if anything – appears on the command line, and you can have whatever happened recorded in a new (or existing) log file.
The end result can be that you almost forget you’re using a command line tool at all. Set it up as a Windows task and XXCopy just runs automatically, whenever you like, just like any other backup program.
Unsurprisingly, all this power brings some complexity, and with 160+ command line switches to explore, this isn’t a program for beginners. But there’s plenty of help, and if you’re happy at the command line, and would like a very configurable program to help automate some local backup/ file sync task, XXCopy deserves a closer look.