Batch file 使用已知文件夹名称的文本文件选择性地复制目录中的文件夹

Batch file 使用已知文件夹名称的文本文件选择性地复制目录中的文件夹,batch-file,command-line,windows-7,scripting,batch-processing,Batch File,Command Line,Windows 7,Scripting,Batch Processing,我的windows box上有一个目录,我希望有选择地将文件夹及其内容从复制到另一个目录。我了解基本的复制命令和批处理脚本的命令,但我不知道如何完成这一步 我有一个大的文本文件,其中包含我希望复制的目录的所有文件夹名,是否有任何方法可以在批处理文件的for循环中插入文件名?我需要对目录进行递归复制 为了澄清,我有一个包含文件夹名称的文本文件,格式如下: "folder 1" "folder 2" "folder 3" "folder 4" 从一个位置到另一个位置,如c:\source到d:\s

我的windows box上有一个目录,我希望有选择地将文件夹及其内容从复制到另一个目录。我了解基本的复制命令和批处理脚本的命令,但我不知道如何完成这一步

我有一个大的文本文件,其中包含我希望复制的目录的所有文件夹名,是否有任何方法可以在批处理文件的for循环中插入文件名?我需要对目录进行递归复制

为了澄清,我有一个包含文件夹名称的文本文件,格式如下:

"folder 1"
"folder 2"
"folder 3"
"folder 4"
从一个位置到另一个位置,如
c:\source
d:\source\u backup

@echo off

setlocal enableextensions disabledelayedexpansion

set "source=c:\somewhere\from"
set "target=c:\somewhere\to"
set "folderList=c:\somewhere\folders.txt"

for /f "tokens=* usebackq" %%a in ("%folderList%") do for %%b in (%%a) do (
    if not "%%~b"=="" echo robocopy "%source%\%%~b" "%target%\%%~b" * /e
)

添加第二个for循环(
%%b
)以处理引用的文件夹名称之外的可能空格。最终复制操作仅回显到控制台。如果输出正确,请删除
echo
命令。

足够简单-向我们展示您的文本文件示例,并告诉我们您希望副本的最终位置。