Bulk Copy files onto multiple flash drives at once

Posted on 2005-04-12
Medium Priority
Last Modified: 2012-08-14

I'm trying to get some USB pen drives ready for a large meeting, and i need to copy files onto them before handing them out.
I have 2 USB hubs connected, (4 ports each). so that's 8 ports, well for some reason I can only connect up to 7 drives at once.. Which isn't bad, sure beats connecting just 2 without the hubs.

Do any of you perhaps know of a utility that I can set up to automatically copy data to the drive when a drive is inserted ? or maybe a utility where i can click a few buttons and the data starts copying ?

Any help with this would be greatly appreciated.

Thank you for your time

Question by:garfield1979
  • 3
  • 2
  • 2
  • +1

Expert Comment

ID: 13764838
You could create a batch file that does the copying for you.  Create a standard folder on the hard drive to hold the common data.  Then add the following lines to a blank text file:

copy c:\commonfolder e:\destinationfolder
copy c:\commonfolder f:\destinationfolder
copy c:\commonfolder g:\destinationfolder

where e: f: and g: are the drive letters assigned to the usb drives

save the file as "copytousb.bat" - if using notepad to edit the text file you must include the quotes or the file will be called copytousb.bat.txt

insert the drives
double-click the batch file and away they go.

note: you can use xcopy instead of copy for more finite control over the copy process
also: you can add dos batch commands to test for certain conditions or programatically control the copy process

hope this helps


Author Comment

ID: 13764886
wouldnt that just copy one drive at a time ?
LVL 13

Expert Comment

ID: 13765242

yes, that would copy them sequentially, only one copy operation going at any given time.  And using copy rather than XCopy with the appropriate switches would fail to copy subdirectories (folders) if any.

Make a folder that is the "prototype" of what you want, then just open that folder, and each of the 7 drives, and "drag and drop" the source folder to all 7 destination drives.  The copies will all proceed in parallel.

Note, however, that the bandwidth of the USB channel is being "split" by the use of a hub.  So it the true root USB 2 port has 400 mbps bandwidth, and a hub is plugged in with 4 drives, then each drive will get, on average, only 100 mbps

Many modern motherboards have as many as 8 motherboard root ports.  Use as many of them, and as few hubs, as possible to increase throughput.  Also, in practice, you won't get more than about 1/3 of the "theoretical" total throughput.  With a single USB2 drive (if it can operate at fully USB2 speed, which a flash drive probably can't), you can get about 1 gigabyte per minute, as a very rough average.  Using hubs on fewer root ports will cut this down significantly.
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

LVL 16

Expert Comment

ID: 13765927
You only need the lines described above in a single batch file.  If your path's have spaces in them, be sure to use quotations like below. Finally, a single asterick * only needs to be entered after the source path. If there are hidden files (autorun?) the /h will copy them.

xcopy "source\*" "destination" /your variables.
xcopy "c:\folder\*" "e:\folder\" /h /e /y
xcopy "c:\folder\*" "f:\folder\" /h /e /y
xcopy "c:\folder\*" "g:\folder\" /h /e /y
LVL 13

Expert Comment

ID: 13766078
The problem with this is the same as the problem with the first post -- the commands in a batch file are executed sequentially.  The 2nd xcopy doesn't start until the 1st xcopy is complete; the 3rd doesn't start until the 2nd is complete, and so on.  It only copies to one drive at a time, when it's possible to have all 7 copies going on currently.  Thus, doing it with a batch file will take a lot longer (up to 7 times as long).

Just doing it in Windows (via "My computer" or "Windows Explorer"), the copies can all be done concurrently, at the same time.
LVL 16

Expert Comment

ID: 13766214
This is just for the sake of clarificatoin. Maybe I don't know anything. But doesn't every dos program have to copy files sequentially? Isn't the definition? You could get a program that says it copies to multiple destinations at the same time, but behind the scenes it is still copying sequentionally. Just curious if I'm off my rocker. Just trying to think of it logically. If a file is in use during the copy process? How is another forked copy process going to access it? It's already in use. Is this right or wrong? Maybe I should post this as a question worth points.

Expert Comment

ID: 13766632
sorry i misunderstood "click a few buttons and the data starts copying"...the comments above are all exactly correct.  

question to the questioner: what is the primary goal - speed or ease?

question to others: would the windows 2000 offline folder / sync tool accomplish this?
LVL 13

Accepted Solution

Watzman earned 375 total points
ID: 13766756

You could do the copies concurrently in DOS by opening a separate DOS window for each drive and doing one drive (one XCopy command) in each Window.  But it's probably easier just to make up an "image" directory of what is desired, and then open a separate window in "my comptuer" or "windows explorer" for each drive, and then "dragging and dropping" the source image onto each flash drive.

DOS is not a multi-tasking environment, but you can open as many DOS windows as desired.  Howevre, there really is no reason to do this in DOS at all, it was not a parameter or constraint of the original question.

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article aims to explain the working of CircularLogArchiver. This tool was designed to solve the buildup of log file in cases where systems do not support circular logging or where circular logging is not enabled
Many businesses neglect disaster recovery and treat it as an after-thought. I can tell you first hand that data will be lost, hard drives die, servers will be hacked, and careless (or malicious) employees can ruin your data.
This tutorial will walk an individual through the process of installing the necessary services and then configuring a Windows Server 2012 system as an iSCSI target. To install the necessary roles, go to Server Manager, and select Add Roles and Featu…
This Micro Tutorial will teach you how to reformat your flash drive. Sometimes your flash drive may have issues carrying files so this will completely restore it to manufacturing settings. Make sure to backup all files before reformatting. This w…
Suggested Courses
Course of the Month15 days, 8 hours left to enroll

850 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question