批处理文件 - 使用列表,从文件夹中移动文件

时间:2017-04-26 23:26:13

标签: batch-file robocopy

我有3个文件夹位于INPUT文件夹中 在OUTPUT文件夹中也有3个文件夹,如此...

"INPUT"
 -Folder1
 -Folder2
 -Folder3

"OUTPUT"
 -Folder1
 -Folder2
 -Folder3

我有来自INPUT \ Folder1的文件列表(list.txt)。 我需要它来读取list.txt中的每一行,如果作为文件存在,则将它们分别移到OUTPUT目标文件夹。

这就是我现在所拥有的,但它将所有文件复制到目标文件夹,而不仅仅是list.txt中的内容:

for /f %%f in (%CD%\list.txt) do robocopy %CD%\INPUT\folder1 
%CD%\OUTPUT\folder1
for /f %%f in (%CD%\list.txt) do robocopy %CD%\INPUT\folder2 
%CD%\OUTPUT\folder2
for /f %%f in (%CD%\list.txt) do robocopy %CD%\INPUT\folder3 
%CD%\OUTPUT\folder3

1 个答案:

答案 0 :(得分:0)

我明白了! 决定尝试xcopy并在文件名中输入空格和特殊字符的“delims = *”,它确实有效!

For /f "delims=*" %%f in (list.txt) do xcopy "%CD%\INPUT\folder1\%%f" 
%CD%\OUTPUT\folder1

所以现在它只会复制list.txt中列出的文件。