Macos – How to queue multiple files for copying on a Mac

bashfile-transfermacosperl

When I copy multiple files on a Mac, the system tries to copy them all at the same time.
The problem is two-fold.

First of all, when you select multiple files and copy them, they all go into one process with an "all or nothing" approach not unlike ACID in databases. Often this is not desireable.

Further, when you add other copy-processes, the system tries to copy everything at the same time.

For example, I decide to copy a large file A, then later I decide to copy a large file B as well. This results in two parallel copy operations, regardless if one of the "large files" also is a selection of many files.

I do not like this for several reasons:

  • When several copy processes run at once, it seems to bogs down other processes.
  • Also, when several files are copied at the same time, the copy process itself seems to go much slower.
  • And lastly, if the process is aborted, none of the files reach its destination.
  • When adding a file to the queue, it will also start copying at once, and bogging down the process even further.
  • This is a real problem when copying to other machines or drives on the (local) net.

Result: The file A, which I wanted to transfer and use first, takes much longer to arrive than needed, and when copying from a central HD on the LAN, I cannot use the first file until all the other files also have arrived.

Thus… How do I queue multiple files for copying on a Mac? To clarify: Regardless of many files are chosen, or they are added one by one, I want them all put into a queue that only copies one file at a time, until the queue is done.

Answers in Bash and especially Perl are also welcome!

Best Answer

UltraCopier

UltraCopier is a free and cross-platform copy utility that is currently in development, so it's not that neat and polished yet. Once you install it, it sits in your menu bar.

It manages a copy list that allows you to queue copy or move jobs, which are then sequentially processed. You can also define the copy process priority as well as the block size of the transfer.

With the new version you can group with similar source and/or destination, or just always or never.

enter image description here

Related Question