如果基于字符串存在文件夹,则将文件复制到现有文件夹

If folder exists based on string, copy files to existing folder

我每天通过 FTP 单独下载一系列文件夹。

文件夹名称格式如下:

[DATE] [ID NO] [ID NAME]

示例:

W:150101 G0101 Building 1
W:150101 G0102 Building 2
W:150101 G0103 Building 3

[ID NO] 和 [ID NAME] 始终相同。 [DATE]每天都在变化。

我正在尝试编写一个批处理文件,每天将包含已知字符串的每个 FTP 文件夹的内容复制到等效的本地文件夹。复制每个 FTP 文件夹的内容后,将删除 FTP 文件夹。

例如:

我一直在研究 IF EXIST,但我不太理解正确的语法。如有任何帮助,我们将不胜感激!

IF EXIST "C:[=12=]\*G0101*" XCOPY "C:[=12=]\*G0101*\*.*" "C:[=12=]\Building 1"

此致

马丁 :-)

您只能在路径的最后一个元素中包含通配符。因此,您需要枚举源文件夹并为每个文件夹执行 xcopy 操作

for /d %%a in ("c:[=10=]\*G0101*") do xcopy "%%~fa\*.*" "c:[=10=]\Building 1"

for /d 将搜索与通配符匹配的文件夹,每个文件夹的引用将存储在可替换参数 %%a 中, do 子句中的代码将是执行。 %%~fa 只是对具有完整路径的文件夹的引用。

编写代码是为了在批处理文件中使用。对于命令行中的用法,将所有双百分号替换为单百分号