我在一个文件夹中有大约2000个文档,我想将它们分成不同的文件夹。 我创建了一个“documents.txt”,列出了我感兴趣的每个文件。
.txt文件读作:
C:\Users\NIE\Desktop\test2\one.pdf
C:\Users\NIE\Desktop\test2\two.pdf
C:\Users\NIE\Desktop\test2\three.pdf
所以现在我继续创建一个.bat文件:
@echo off
FOR /F "delims=" %a IN (C:\Users\...\Desktop\test2\documents.txt) DO COPY "%%~a" "C:\Users\...\Desktop\test2\kopieren\%%~nxa"
文件夹结构如下:
在“... \ Desktop \ test2”中,找到所有文档。在子文件夹(“... \ Desktop \ test2 \ copy”)中,应复制特定文档(如documents.txt中所列)。
在运行我的代码时,我收到了声明:
%C:\Users\...\Desktop\test2\one.pdf
The syntax for the filename, path is wrong
0 files were copied.
所以我猜“%”似乎是这里的坏人。我为.txt文件尝试了不同的样式,比如
one.pdf
userprofile%\Desktop\test2\one.pdf (thought I could use the first % for completing the "%userprofile%" stuff
我可以通过谷歌找到的每个解决方案都没有用,在我的情况下,.txt文件的格式似乎是一个问题。
真的很期待你的回答:)
答案 0 :(得分:1)
看起来你犯了一个致命的错误:%a
修正:
FOR /F "delims=" %%a IN (C:\Users\...\Desktop\test2\documents.txt) DO COPY "%%~a" "C:\Users\...\Desktop\test2\kopieren\%%~nxa"