【问题标题】:Using ROBOCOPY or Batch Script to Copy .doc File From Different Sub-Directories使用 ROBOCOPY 或批处理脚本从不同的子目录复制 .doc 文件
【发布时间】:2012-06-04 22:19:27
【问题描述】:

我目前有这个文件夹结构:

C:\Quarter1\Folder100\Q1Review100.doc
C:\Quarter1\Folder101\Q1Review101.doc 
  ...
C:\Quarter1\Folder120\Q1Review120.doc

除了没有 .doc 文件之外,我还有另一个目录遵循相同的结构:

C:\Quarter2\Folder100\
C:\Quarter2\Folder101\
…
C:\Quarter2\Folder120\

我的问题是,我如何编写批处理脚本或使用 ROBOCOPY 以便从以下位置复制所有 .doc 文件:

C:\Quarter1\Folder100\*.doc
C:\Quarter1\Folder101\*.doc
…
C:\Quarter1\Folder120\*.doc

到一个目录:

C:\Quarter2\Folder100\
C:\Quarter2\Folder101\
…
C:\Quarter2\Folder120\

但是,我想将 Q1 重命名为 Q2,而不是 Q1Review100.doc 作为名称,因此应将文件复制并重命名为 Q2Review100.doc。

如果我需要进一步澄清这一点,请告诉我。

【问题讨论】:

    标签: command-line cmd command-prompt robocopy


    【解决方案1】:

    您可以发出两个命令:

    1. 复制所有文件:
      robocopy C:\Quarter1 C:\Quarter2 /S
    2. 将所有文件名中的 Q1 替换为 Q2:
      for /f "tokens=* delims= " %i in ('dir /b /s "c:\Quarter2\*.doc"') do Set LIST=%i& set LIST | ren "%~fi" "%LIST:Q1=Q2%"

    注意:如果您将其写入批处理文件,请将 %i 替换为 %%i

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-04-13
      • 2013-10-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多