• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 685
  • Last Modified:

batch for sub directories name take and copy to a file

Hello I have a directory c:\data with a lot of sub directories we want a script that look inside each sub directory for the file resources.html
   All sub directories contain a different resources.html because of that we want the batch.
   Now the batch once found the resource.html the script must copy that file resource.html but with the same of the sub directory name where its the main resources.html
   For example:
  In c:\data we have 2 sub directories c:\data\app2 and c:\data\app3 this is just an example because actually we have hundred of sub directories there.
  Now in our example like I mentioned each sub directory has its own resources.html it means something like that c:\data\app2\resources.html and c:\data\app3\resources.html and so on for hundred directories now the batch must copy each resources.html with the name of the sub directory where was taken and with same destination in other words the resulting copied files will be:
    c:\data\app2\app2.html and  c:\data\app3\app3.html note that app2.html and app3.html are the new files copied, the relation is: app2.html is the resources.html that correspond to sub directory c:\data\app2\resources.html and app3.html is the resources.html that corresponds to c:\data\app3\resources.html is like just copy the resources.html in the same directory but with name of the sub directory where it is its resources.html in other word and with destination in same sub directory and note also the name is just app2.html and app3.html and the name c:\data was ignored for each name of the new files; for c:\data\app2\ juts we take the app2 section to name the app2.html and ignore the c:\data and the similar for app3 and of course like we have hundred of sub directories with different names that will be the dame procedure for all.
I hope someone can help for a batch fo ms dos command prompt.
Thank you
  • 2
1 Solution
Steve KnightIT ConsultancyCommented:
Wow, what a long description... Think you just want this...

@echo off
CD /d c:\data
For /f "tokens=*" %%a in ('dir /b /ad') do copy /y "%%~a\resources.html" "%%~a\%%~a.HTML"

To do from cmd prompt rather than batch file change to the directory then do for command but each %% change to just %.

coerraceAuthor Commented:
Works perfect
Steve KnightIT ConsultancyCommented:
NP, try typing that on a phone :-)


Featured Post

Visualize your virtual and backup environments

Create well-organized and polished visualizations of your virtual and backup environments when planning VMware vSphere, Microsoft Hyper-V or Veeam deployments. It helps you to gain better visibility and valuable business insights.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now