0

使用这种情况,我将如何移动所有子文件夹中的所有文件,除了一个文件夹(存档)?

在 c:\folder 中,我有一个名为“Archive”的文件夹,一堆随机命名的文件夹将从 ftp 服务器进入其中,其中包含 txt 文件。我需要递归地从这些随机生成的文件夹中提取所有内容,同时保留存档文件夹。批处理的当前代码行:

for /r %l in (*) do (IF NOT "%l"=="*Archive*" move /y %l c:\folder)

结果是

c:\folder>(IF NOT "c:\folder\Archive\arctest.txt" == "*Archive*" move /y c:\folder\Archive\arctest.txt c:\folder )
1 file moved

我希望这个文件在所有其他子文件夹中的子文件移动时保留。

4

1 回答 1

3

尝试这个:

for /r %a in (*) do @echo %~dpa|findstr /rvi "^.:\\[^\\]*\\archive\\$" >nul&& echo move /y "%~a" c:\folder
于 2013-07-25T19:12:15.203 回答