批处理文件仅 Xcopy 特定文件
Posted
技术标签:
【中文标题】批处理文件仅 Xcopy 特定文件【英文标题】:Batch File Xcopy specific file only 【发布时间】:2021-10-04 04:58:44 【问题描述】:想就创建简单的 bat 文件寻求帮助,该文件会将特定文件从源复制到目标。 例如。
Source = C:\Source
Dest = D:\Destination
源文件:
123.CSV
234.CSV
456.CSV
567.CSV
678.CSV
789.CSV
012.CSV
我只想复制ff:
123.CSV
456.CSV
678.CSV
012.CSV
复制后删除其他人。
脚本:
@ECHO OFF
CHCP 65001 > NUL
FOR /F "usebackq delims=" %%I IN ("G:\SOURCE\123.CSV") DO (
xcopy /s "G:\SOURCE\123%%I" "G:\DESTINATION\%%I*"
)
PAUSE
提前感谢您的帮助
【问题讨论】:
您在使用 Microsoft 提供的用于复制文件的众多命令之一时遇到了哪些问题? Robocopy、Xcopy 和只是 Copy。要删除文件,请使用 DEL 命令。请拨打tour。请阅读How to Ask 一个好问题。然后提供minimal reproducible example 的代码,您尝试使用它来解决您的问题。 @Squashman 注意到我更新了上面的细节 您正在使用的FOR /F
命令读取文件的内容,并且对于它读取的每一行,它将该行的输出分配给FOR
元变量%%I
。你为什么这样做?您没有提到使用文件作为要复制的文件的源。您也没有提到从子目录复制这些文件,XCOPY
代码正在这样做。
@Squashmanh hello 在上面的询问中提到:我只想复制 ff 文件:123.CSV 456.CSV 678.CSV 012.CSV 源文件夹:“G:\SOURCE\123%%I " 基本上我只想从源文件夹中复制 10 个 CSV 文件,但该文件夹有 100 个 Plus .CSV 文件。
那么是什么阻止了您使用 10 个XCOPY
命令进行简单的暴力破解? xcopy "G:\SOURCE\123.csv" "G:\DESTINATION\"
。冲洗并重复。
【参考方案1】:
这很好用。 或者一个大而长的 ROBOCOPY 命令。 robocopy "G:\SOURCE" "G:\DESTINATION" "123.CSV" "456.CSV" "678.CSV" "012.CSV" – @squashman
【讨论】:
以上是关于批处理文件仅 Xcopy 特定文件的主要内容,如果未能解决你的问题,请参考以下文章