CMD 复制递归,但压缩目录结构

csa*_*uve 1 windows file-transfer command-line

类似于如何递归复制文件而忽略目标目录结构?但在cmd.

我想递归复制所有文件,但在目标文件夹中我想压缩目录结构。我首先查看了xcopy,但它不允许选择压缩结构(我可以看到)。

然后我查看了for,但是当目录结构中有空格时我无法让它工作。例如:

for /F %f in ('dir /b/s/A-D D:\Libs') do @copy "%f" D:\Bin /Y >NUL
Run Code Online (Sandbox Code Playgroud)

这不会复制驻留在带有空格的路径中的任何文件。这似乎是由于for在空格和回车字符上拆分的事实。

如果有一个适用于 MSBuild 的解决方案,我也会接受。

小智 5

for /f "tokens=*" %f

欲了解更多信息: for /?