Using Robocopy, how do I copy to multiple destination

Microsoft Windows
Post Reply
User avatar
MigrationUser
Posts: 336
Joined: 2021-Jul-12, 1:37 pm
Contact:

Using Robocopy, how do I copy to multiple destination

Post by MigrationUser »

30 Sep 2010 16:42
(_8*(l)Homer

Hi,

I have a batch file which I use to deploy the latest code base builds on a build server. Currenmly, the batch file has around 40 robocopy commands. I NEED to condence these.

Here is an example of part of the batch file:

Code: Select all

echo copying DEV appserver to RA05 Appserver folders > DevRelease.txt
robocopy c:\ra4\deploy\%releaseVer%\DEV\Appserver\ \\ra05E\E$\Deploy\Appserver /s /e >> DevRelease.txt
robocopy c:\ra4\deploy\%releaseVer%\DEV\Appserver\ \\ra05D\E$\Deploy\Appserver /s /e >> DevRelease.txt
robocopy c:\ra4\deploy\%releaseVer%\DEV\Appserver\ \\ra05B\E$\Deploy\Appserver /s /e >> DevRelease.txt
robocopy c:\ra4\deploy\%releaseVer%\DEV\Appserver\ \\ra05A\E$\Deploy\Appserver /s /e >> DevRelease.txt
Is there any way to make robocopy copy to multiple destinations in one command?

Joe

----------------------------

#2 30 Sep 2010 18:16
bluesxman


It's easy with the "FOR" command. This is how you'd do it in it's simplest form:

Code: Select all

@echo off

for %%T in (
ra05E
ra05D
ra05B
ra05A
) do (
robocopy c:\ra4\deploy\%releaseVer%\DEV\Appserver\ \\%%T\E$\Deploy\Appserver /s /e >> DevRelease.txt
)
You could also do this:

Code: Select all

for /f "usebackq tokens=*" %%T in ("ServerList.txt") do (
robocopy c:\ra4\deploy\%releaseVer%\DEV\Appserver\ \\%%T\E$\Deploy\Appserver /s /e >> DevRelease.txt
)
Where "ServerList.txt" (or a name of your choosing) is a plain text file containing the list of target servers (1 per line).

cmd | *sh | ruby | chef

----------------------------

#3 30 Sep 2010 20:56
(_8*(l)Homer


Re: Using Robocopy, how do I copy to multiple destination

Thanks for your help. I used the 2nd method you mentioned.

Joe
Post Reply