1

The directory structure is:

  Images
    -Folder1
      -image1.jpg
      -image2.jpg
    -Folder2
      -image3.jpg
      -image4.png 
    -Folder3
      -image6.png
      -image7.jpg 
    -Folder4

I want to copy all images(i.e *.jpg, *.png) files only (not the folders) into the parent directory("Images").

I have tried using "robocopy" as follows:

robocopy /np ..\..\Exam\Images ..\..\Exam\Images *.jpg *.png /S

Here all files as well as folders are copied :(. But I need only files to be copied. How to do this?

Many many thanks in advance!

5 Answers 5

6

Try this on the command line:

for /r "Images" %i in (*.jpg *.png) do copy "%~fi" "my\target folder"

For a bach script the % must be doubled %%.

Sign up to request clarification or add additional context in comments.

3 Comments

Thank you a lot :). It worked. I just changed it to my specific requirement as follows: for /r ..\..\Exam\Images %%f in (.jpg,.png) do copy %%f ..\..\Exam\Images
You use this without wildcards * ?
Opps!. No, I used the wild card(*) i.e *.jpg, *.png in this case. Thank you for pointing this.
1

I think COPY or XCOPY is best used for files while I prefer Robocopy when dealing with folders.

Using the posted example try: (adjust paths to suit your needs.

    @Echo off
    For /f %%b In ('Dir C:\Exam\Images /b /s /a:d') Do (
       Robocopy %%b C:\Exam\Images *.jpg *.png /xx /np
    )

Comments

0

an easier way of doing this might be

for /r %%p in (*.png, *.jpg) do copy %%p destinationFolder.

Comments

0

Robocopy only has the /XD switch to exclude directories but it excludes the whole directory. I'd use a batch file to do it instead.

Try this:

@echo off
setlocal

for /f %%a in ('dir *.jpg *.png /b /s /a-d') do (
   copy %%a PathToImagesFolder
)

Comments

0

there is an easy to use program called Drop-It if this is a repetitive task then you can use this to sort|move|copy the files to a single directory. hope this helps

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.