Monday, April 30, 2018

RichCopy: Microsoft’s File Copy Gem

Microsoft had (or maybe still has) a command line utility called "RoboCopy" that would copy files and folders, retaining their permissions (within same domain/workgroup).

That has been replaced (some time ago actually) by a program called "RichCopy." It used to be an internal Microsoft program, but they released to the general public some time ago. I just came across it and thought I would share!

The program first needs to be put into Advanced Mode. Do this by clicking VIEW > ADVANCED.

After that, click the little gear to check out the settings:


The main area that most techie folks will want to explore is "File attributes, Error Handling" because that is where you can set the security/permissions settings. But, notice on this screen above, there is an option for "Directory Copy: 3." This indicates the number of threads that the program will use during the copying process! Yes, that's right, whatever number you specify in there, that's how many different files can be copied at the same time! Well, at least how many can be copying at the same time. For example, if you are copying 2,000 files and you specify "10" in the box, it will start to copy 10 files. If some of those files are large, then the program continues to copy those (using up a thread for each file) but will keep copying with any available threads! This beats the tar out of copying one file at a time! In my case, I had several 400MB files that started, all the while the program plugged away at the smaller files it was encountering. Theoretically, you could have 10 threads all running with a large file copying in each one. I ran into that on my own server. But, it did not take long to muscle through those and pick up copying smaller files at a flying pace.
The program is available from Microsoft: HERE!
Just run the EXE which will extract several files into a folder on your hard drive called "c:\HoffmanUtilitySpotlight" and in there, you run SETUP. Easy peasy.
I also turned off some of the errors that would stop the copying. If the program ran into a file that it couldn't copy, for example, I just wanted it to keep on truckin. I would deal with rogue files later.

No comments:

Post a Comment