0

このシナリオを使用して、1 つのフォルダー (アーカイブ) を除くすべてのサブフォルダーからすべてのファイルを移動するにはどうすればよいですか?

c:\folder には、「Archive」というフォルダーがあり、ランダムな名前のフォルダーがたくさんあり、ftp サーバーから txt ファイルが入っています。Archive フォルダーをそのままにして、これらのランダムに生成されたフォルダーからすべてのコンテンツを再帰的にプルする必要があります。バッチの現在のコード行:

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 に答える