1

需要专家帮我做简单的窗口 .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

测试目的地

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)*

谢谢

4

2 回答 2

1

这个问题至少可以分为两个问题:

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

需要澄清的一些问题:

  • 如何进入目标根目录
  • 如果目标文件夹(或其子文件夹)已经存在会怎样?

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

于 2012-09-24T06:52:37.093 回答
1

这会将所有文件和子目录(包括空目录)从 复制sourceDirtargetDir.

XCOPY /S /E /I sourceDir targetDir

targetDir不需要存在。XCOPY如果需要,将创建它。
要排除空目录,请省略/e.

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

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

要了解有关 的更多信息xcopyXCOPY /? ENTER请在命令提示符处键入。

于 2012-09-25T22:10:41.160 回答