【发布时间】:2021-09-04 22:23:04
【问题描述】:
我正在尝试将特定文件从列表“filelist.txt”复制到目标文件夹。使用下面提供的代码,我只能从特定的源文件夹执行此操作,并且只有文本文件中的文件名(与完整路径相比)。我想从主文件夹中的子文件夹复制文件。如果我已经在文本文件中复制了我需要的文件的完整路径,我该怎么做?
这是我拥有的代码的开头(根据here 提供的代码构建):
代码
@ECHO ON
SET FileList=G:\filelist.txt
SET Source=G:\fold1
SET Destination=G:\Copy1
FOR /F "USEBACKQ TOKENS=*" %%F IN ("%FileList%") DO XCOPY /F /Y "%Source%\%%~F" "%Destination%\"
GOTO :EOF
【问题讨论】:
-
您最好使用
copy而不是xcopy来复制单个文件... -
打开命令提示符窗口键入
xcopy /?,按[ENTER]键,然后阅读其使用信息。您应该注意到它有很多选项,(与copy区别开来)。此外,您可能会发现使用For /R循环或For /F循环(使用Dir和/S) 来枚举子目录,然后检查这些结果是否可以更好地完成您的任务您的filelist.txt内容使用findstr.exe。打开命令提示符窗口键入for /?,按[ENTER]键,阅读其使用信息,然后对findstr /?执行相同操作,特别注意其/G选项。
标签: file batch-file copy