【问题标题】:Need a batch script to copy certain folder and subfolders into other folders in different directory需要一个批处理脚本将某些文件夹和子文件夹复制到不同目录中的其他文件夹中
【发布时间】:2017-08-24 04:39:13
【问题描述】:

我必须编写一个脚本来将一个文件夹及其子文件夹从一个目录复制到另一个目录,该目录有数百个不同名称的文件夹。

文件夹结构如下:

来源(目录 M:)

Folder1
--------Subfolder1
--------Subfolder2
--------Subfolder3

目的地(目录 O:)

Folder A
--------SubfolderA

Folder B
--------SubfolderA

Folder C
--------SubfolderA

...

Folder xxx
--------SubfolderA

到目前为止,我已经完成了这个阶段,但无法让它发挥作用。

首先我运行这段代码来获取文件夹列表 目标目录并将其导出到文本文件

dir /b /ad > c:\temp\folder-list.txt

现在我需要告诉脚本将文件夹/子文件夹从源复制到目标,但我无法让它工作。

 FOR  %%i in (c:\temp\folder-list.txt) DO xcopy /t /e M:\Folder1 %%i\SubfolderA\

请帮忙。

PS:脚本应该将一个文件夹复制到具有随机名称的其他文件夹中。

我想,我在这里取得了一些进展:

for /d %%a in ("O:\*") do if exist "%%a" xcopy /t /e "M:\Folder1" %%a\SubfolderA

但我收到以下错误。

参数个数无效

【问题讨论】:

  • 会发生什么?它不会复制吗?
  • 问题是,我不知道如何将 xcopy 指向目标文件夹。我的意思是 O:\destination 文件夹\SubfolderA
  • 预期的结果是什么? Folder1 和 Subfolder1 应该在哪里结束?
  • 由于目标目录包含数百个不同名称的文件夹。 folder1 及其所有子文件夹应复制到目标目录中的所有 SubfolderA 中。
  • 无论是从您的描述/代码还是从布局中,都无法明确您想在哪里复制什么。它看起来确实像Super User 而不是Stack Overflow 的问题

标签: batch-file xcopy


【解决方案1】:

这是对我有用的代码:

for /d %%a in ("O:\*") do if exist "%%a" xcopy /t /e "M:\Folder1\*" "%%a\SubfolderA"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-09-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多