将分号分隔文件列表从txt文件复制到windows cmd中的给定文件夹

时间:2011-04-27 03:37:31

标签: windows command-line windows-scripting

我有包含例如:

的文本文件
c:\test\test1.txt;d:\test2\j.js;d:test2\2.cs

我需要将使用Windows命令行bat文件分隔的文件复制到传递给bat文件的给定文件夹。我怎样才能做到这一点?

2 个答案:

答案 0 :(得分:2)

非常简单,实际上:

for /f %%l in (somefile.txt) do (
    for %%f in (%%l) do (
        copy "%%f" %1
    )
)

第一个循环在文件上按行迭代;第二个将以分号(和其他东西,例如空格和逗号)分开。如果文件名看起来像你提供的那样,它应该可以工作。

如果复制目的地也是这样,那么只需再添加两个循环:

for /f %%l in (somefile.txt) do (
    for %%f in (%%l) do (
        for /f %%k in (destination.txt) do (
            for %%g in (%%k) do (
                copy "%%f" %%g
            )
        )
    )
)

答案 1 :(得分:0)

您可以使用以下批处理文件命令从文件列表中复制文件:

for /f "usebackq delims=;" %%f in (filelist.txt) do copy %%f %1

假设filelist.txt在单独的行上有每个文件名:

c:\test\test1.txt;
d:\test2\j.js;
d:\test2\2.cs

不知道如何解析单行。