【发布时间】:2015-07-08 17:28:17
【问题描述】:
我找到了许多与以下相关的帖子,但还没有找到解决方案!
我有一个包含文件列表的 filelist.txt 文件:
C:\test1\sample1.txt
C:\test2\sample2.txt
C:\test3\folder1\sample3.txt
C:\test3\folder1\sample4.txt
C:\test3\folder1\folder2\sample5.txt
我想使用带有 copy、xcopy 或 robocopy 的批处理文件来读取确切的文件并将它们与文件夹一起复制到指定的目录,即。结果:
C:\copy_folder\test1\sample1.txt
C:\copy_folder\test2\sample2.txt
C:\copy_folder\test3\folder1\sample3.txt
C:\copy_folder\test3\folder1\sample4.txt
C:\copy_folder\test3\folder1\folder2\sample5.txt
在源目录中可能有其他文件,但不应复制这些文件,只复制在 filelist.txt 文件中的文件。所以创建了一个副本文件结构,但没有未指定的文件。
提前致谢!
【问题讨论】:
-
for /F "delims=" %x in (filelist.txt) do @echo %~dx "%~px" "%~nxx"可能是一个起点。读取整个for /?(最多替换FOR变量) -
您的结果示例是错误的。 “sample2.txt”文件应该是
C:\copy_folder\test2\sample2.txt,同样的点适用于其余文件,或第一个文件是错误的,应该是C:\copy_folder\sample1.txt。这些不同的结果中的哪一个是您想要的? -
抱歉 Aacini,第一个是正确的方法。我已经修改了问题以反映这一点。
标签: powershell batch-file copy xcopy robocopy