创build交互式窗口.bat文件,将开发文件复制到生产文件夹中

需要高手帮我做简单的窗口.bat文件,把文件/文件夹复制到不同的特定文件夹中

ProjectDevFolder /module1 /module1-1 /module1-2 /module2 /module2-1 /module2-1-1 /module2-1-1-1 /module2-2 /images /css /jquery /classes .jspfile1 .jspfile2 .jspfile3 .jspfile4 

testing目的地

 wwwFolder /module1 /module1-1 /module1-2 /module2 /module2-1 /module2-1-1 /module2-1-1-1 /module2-2 /images /css /jquery /classes .jspfile1 .jspfile2 .jspfile3 .jspfile4 

窗口命令提示符的示例

 C:\DeployScript.bat To copy : css module2-1-1-1 jquery *(user can input multiple value with any seperator eg:space is the seperator)* - Status deploy css -done - Status deploy module2-1-1-1 -done - Status deploy jquery -done To copy : *(Next command)* 

谢谢

这将把所有文件和子目录(包括空的)从sourceDir复制到targetDir

 XCOPY /S /E /I sourceDir targetDir 

targetDir不需要存在。 XCOPY会根据需要创建它。
要排除空目录,请不要使用/e

要排除文件,请创建一个包含要排除的文件名称的文本文件,然后使用以下命令:

 XCOPY /S /E /I /EXCLUDE:files.txt sourceDir targetDir 

要了解有关xcopy更多信息,请键入XCOPY /? 在命令提示符下输入。

这个问题可以分解成至少两个问题:

  • 分割用户输入
  • 复制目录
    • 查找目录递归(module2-1-1-1)

有些问题需要澄清:

  • 如何进入目的地根目录
  • 如果目标文件夹(或其子文件夹)已经存在,会发生什么情况?

以下是针对这两个问题的一些指示:

  • 拆分用户输入: 如何拆分Windows批处理文件中的字符串?
  • 批量递归: Windows批处理文件循环通过目录处理文件? (去适应)