49

When copying hundreds of small files/folders on Windows, the calculating phase of Windows often takes a really long time before anything starts actually being copied. Is there a setting to tell Windows to start copying right away and/or skip the whole pre-calculation phase?

3
  • 4
    Even with utilities like TerCopy the calculation takes place before the actual copying occurs. E.g. TeraCopy will sit there doing nothing but the led on the flashdrive is blinking like crazy. I am unable to understand the logic behind this practice, apparently Windows is as stupid as an OS can get. The best solution is what Zachary is suggesting, i.e. use the cmd line. All other "answers" are wrong.
    – user116883
    Feb 5 '12 at 5:20
  • Like it or not, the purpose of the calculation is to provide a more accurate status bar and time estimate. Lets say you have 100 files in a directory with 99 files that are 1MB in size and 1 file that is 10GB in size, the first 99 files are copied and the status bar shows that 99% for a prolonged period of time because of the large file - most users are going to think the copy operation has frozen and abort the process even though it's working properly on the large file. It can be irritating for small files but when it comes to large files, it can manage time expectations.
    – Dustin G.
    Feb 5 '12 at 6:42
  • It is especially terrible with Media Transfer Protocol (MTP).
    – neverMind9
    Aug 1 '19 at 7:11
28

Don't use Explorer.

Whether that means using a 3rd party file manager, a copy handler, or the command line is up to you.

A copy handler is a shell extension that intercepts any attempts to copy/move files and implements the operations itself. Normally these copy handlers are made to implement features that Explorer doesn't have, like queuing up multiple operations, different overwriting semantics or synchronization, speed throttling, etc. Some tools you can look at include FastCopy, TeraCopy, SuperCopier, and the imaginatively named Copy Handler.

Personally, I use FastCopy because it maintains the semantics of Explorer's copying the best. For example, the last time I tried TeraCopy to update a file with multiple hardlinks, it didn't do the same thing Explorer did.

5
  • 2
    Out of curiosity, why do you have files with multiple hardlinks?
    – Hugh Allen
    Apr 28 '10 at 1:10
  • 6
    Because they're useful. For example, the top of my download folder has sub-folders for each PC I own. I'll hardlink programs that need installed on each system into that system's folder. I use junctions and hardlinks for all kinds of things, and Link Shell Extension makes them easier to create, see, and manage.
    – afrazier
    Apr 28 '10 at 3:14
  • 3
    none of these works for Phones / MTP drives? :'(
    – Gizmo
    Aug 28 '17 at 11:36
  • I am stunned that I only found FastCopy now... this has always annoyed me about Windows and tonight, once again, I had about a gigabyte of variously sized files and Windows started at 2 hours 45 minutes and eventually settled on around 17 minutes to copy to my NAS over my gigabit network. Looking for a solution, I tripped across this, and was not disappointed. This is the fastest copy operation I have ever seen.
    – Allen J
    Sep 15 '18 at 4:09
  • The only thing faster (to copy) was zipping up the files first, which allowed the file copy run at network speed (about 5 seconds for the resulting 350K zip at fastest compression), but then you still have to unzip them on the other end. If you do that from the source computer, then you are unpacking in memory and sending back over the network. Just use FastCopy. Still don't understand why this is an order of magnitude faster than other utilities.
    – Allen J
    Sep 15 '18 at 4:10
13

robocopy is the best tool for large copies of tiny files.

1
  • This answer is in my opinion the best, and for two reasons. Whilst there may be many third party tools to handle and copy your data, robocopy is the tool that's built-in to Windows. By name and by nature, robocopy is extremely robust and I wouldn't trust important file copies with anything else.
    – hazymat
    Feb 3 '21 at 1:29
6

There are two phases in the calculation of remaining time of Windows Vista/7’s file-operation dialog. There is an initial phase in which the files and folders to be copied or moved are enumerated, and a second phase in which the remaining time is estimated. The first phase does indeed happen before any file operations are actually performed, but the second one happens while the files are being copied/moved and constantly updated as it progresses (thus the remaining time may go up or down).

If your issue is with the second part, then there is no need to worry. The Time remaining line will be updated once it has finished calculating, but the files are already being moved/copied. (In fact, it must copy or move some files so that it can gauge the average read/write speed for use in the estimate calculation; merely knowing the number of files/folders is not sufficient).

If your problem is with the first part, then as others have mentioned, you could use a third-party tool to just copy/move files and folders right away, but be aware that there are some advantages to using the built-in method (ie, pre-enumeration) instead of doing it blindly like how it was done in previous versions of Windows. By knowing the status of the files and folders (eg file/dir-names, attributes, sizes, etc.), Windows is able to provide you with options for handling conflicts and hidden/system files. If it does not first make a complete list of files and folders, it cannot ask you about merging or overwriting/renaming objects. (Technically, it can, but by building a list first, it makes the process faster and easier to manage, especially if you click the always/do for all box.) Like some have said here, even third-party tools usually build a list.

2

If you you copy/move folders using the command line, the process proceeds without the calculation.

1
  • Yes, but it is essentially useless for things like copying or moving groups of files, or folders to other volumes. (That’s why I wrote a command-line tool that performs file-operations via the shell.) ;-)
    – Synetech
    Feb 5 '12 at 7:20
0

Open powershell, type this replacing your source and destination, you can also use network paths here

Copy-Item "c:\\sourcefolder\*" "C:\destinationfolder" -Recurse -Force -verbose
-2

TLDR: Use something like OneDrive as a conduit.

As infuriating as this is (after all, File Explorer under Windows 10 in 2019 should just work, whether locally, across a network, between internal and external devices, etc.--shame on Microsoft!), another idea is to use OneDrive (or other similar cloud-based repo) as the conduit through you make small file copies and moves. Here's the workflow:

  1. Copy/move the files in question to OneDrive on the source computer.
  2. Copy the files from OneDrive on the target computer.
  3. Optionally delete the files in question from OneDriver when you're done.

Of course there will be small variations to the above workflow depending on your requirements.

3
  • Please NEVER recommend OneDrive without recommending to encrypt the files in question, or at least without explaining the implications regarding privacy and data protection rules. Furthermore, try that with 10 GB of data ... This is a really bad solution IMHO.
    – Binarus
    Oct 21 '20 at 15:11
  • Who are you to say "NEVER"? Obviously, somebody who thoroughly thinks about all aspects of a solution, which is in contrast to you. Your claim that OneDrive is secure is just parroting of Microsoft advertising slogans. Microsoft is known to cooperate willingly with all sorts of secret services, and we all thought Yahoo and friends were secure - until data of billions of users was stolen.
    – Binarus
    Oct 21 '20 at 20:56
  • And, for the record, if you have several thousands or even more of what you consider "small files" (whatever that may be), that could easily make up several GB. On the other hand, if your term "small" refers to the number of files, that does not make any sense because we obviously don't have the problem the OP described when we copy only a small number of files.
    – Binarus
    Oct 21 '20 at 21:05
-4

Hold the Ctrl key while left-clicking to drag-and-drop. It seems to get started copying without the worthless precalculation phase.

2
  • 5
    Holding Ctrl means copy, as opposed to the default of moving if it's within the same partition. It should not affect how the copying is done...
    – Bob
    Jun 17 '12 at 7:56
  • Let's be clear: It's not that it "should not affect how the copying is done" (I agree, it shouldn't!), it absolutely DOES NOT affect how the copying is done. :)
    – Jazimov
    Oct 9 '19 at 17:48

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.