我有一些文件,例如
the punisher return.cbr
the punisher new adventure.cbr
undiscovered country america.cbr
undiscovered country canada.cbr
我需要以这种方式移动文件
the punisher
|
+--- the punisher return.cbr
+--- the punisher new adventure.cbr
undiscovered country
|
+--- undiscovered country america.cbr
+--- undiscovered country canada.cbr
我测试了这个脚本
@echo off
setlocal EnableExtensions DisableDelayedExpansion
for /F "eol=| delims=" %%I in ('dir /AD /B /O-N 2^>nul') do if exist "%%I*.cbr" move /Y "%%I*.cbr" "%%I\"
endlocal
但它只有在我手动创建文件夹the punisher
之前才有效undiscovered country
前运行脚本。我需要避免手动创建文件夹来移动文件
答案1
最佳解决方案(有很多):
您可以使用RoboCopy
参数/MOV
,它将为您创建目录。
例子:RoboCopy c:\FromHere\SomeDir c:\ToHereEvenThoughItDoesntExist\SomeOtherDir "%%I" /MOV