我有以下代码从列表中复制文件。当文件夹名称没有空格的文件的路径时,它可以正常工作。但是文件夹名称有时可能有空格,我该如何改进代码以处理带有空格的文件夹名称
FOR /F %%a in (find_file_list.txt) DO COPY "%%a" "C:\test\%%~nxa"
基本上,在此find_file_list.txt中,列出了所有带有路径的文件
c:\abc\def\12345.txt
c:\abc\def\12346.txt
c:\abc\def\12347.txt
上面的代码将所有这三个文件复制到test文件夹中,并且工作正常。现在,当find_file_list.txt更改时,实际的文件夹名称中实际上有空格,例如
c:\ab c\de f\12345.txt
c:\ab c\de f\12346.txt
c:\ab c\de f\12347.txt
上面的代码不再起作用...有什么想法吗?
您忘记选择delims
要分割的对象:
FOR /F "delims=" %%a in (find_file_list.txt) DO COPY "%%a" "C:\test\%%~nxa"
默认分隔符为空格,如果文件包含空格,它将在空格处拆分。只需添加"delims="
以将其更改为完整字符串即可。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句