Ramakrishnan M
Ramakrishnan M

Reputation: 482

how to copy directory of specific files in batch file

c:/--> folder1-->
      folder2->
           img001.png
           img002.jpg
           img003.png

I having kind of folder structure.

I need to copy a single file from this folder to Destination folder.

source : "c:\folder1\folder2\imgoo1.png"
Destination:"D:\folder1\folder2\imgoo1.png"

need output:

D:/--> folder1-->
      folder2->
           img001.png

Note:I need batch file format

Upvotes: 1

Views: 2908

Answers (3)

foxidrive
foxidrive

Reputation: 41234

This will copy that one file. The target filename is not required but can be left in.

copy "c:\folder1\folder2\imgoo1.png" "D:\folder1\folder2\imgoo1.png"

This assumes that the folders already exist.

Upvotes: 0

MC ND
MC ND

Reputation: 70923

robocopy "c:\folder1\folder2" "d:\folder1\folder2" "img0001.jpg"

Since robocopy is not included in windows XP, this can be done with plain xcopy

xcopy "c:\folder1\folder2\img0001.jpg" "d:\folder1\folder2\"

Upvotes: 1

Magoo
Magoo

Reputation: 80023

for %%f in (img001.png img002.jpg img003.png) do copy /b "c:\folder1\folder2\%%f" "d:\folder1\folder2\"

Note that thw directory separator in windows is \, not /. / is used as a command-switch - /b in the above case means "copy in binary mode'.

Note that you do not say whether the batch should check whether the destination directory exists or whether the destination filename already exists.

md "d:\folder1\folder2" 2>nul

will force the destination filename to exist (2>nul suppresses the 'already exists ' message)

You can add an extra switch /y to the copy command to force overwrite in the case that the destination file already exists.

You can add >nul to the copy command to suppress the 1 file copied message.

Upvotes: 0

Related Questions