For loop 批处理文件-移动重复文件
我对批处理文件中的for循环感到头痛 基本上,我是通过一个归档文件夹进行搜索,以查看文件是否已被处理。如果是,则将文件移动到“副本”文件夹。我在脚本中设置了上面的日期变量,它们工作正常:For loop 批处理文件-移动重复文件,for-loop,batch-file,For Loop,Batch File,我对批处理文件中的for循环感到头痛 基本上,我是通过一个归档文件夹进行搜索,以查看文件是否已被处理。如果是,则将文件移动到“副本”文件夹。我在脚本中设置了上面的日期变量,它们工作正常: for %%f in (%toLoadLocation%\*.*) DO ( if exist %archiveLocation%\%%~nxf ( IF NOT EXIST "%archiveLocation%\Duplicates" mkdir "%archiveLocation%\Duplicate
for %%f in (%toLoadLocation%\*.*) DO (
if exist %archiveLocation%\%%~nxf (
IF NOT EXIST "%archiveLocation%\Duplicates" mkdir "%archiveLocation%\Duplicates"
IF NOT EXIST "%archiveLocation%\Duplicates\%localYYYY%" mkdir "%archiveLocation%\Duplicates\%localYYYY%"
IF NOT EXIST "%archiveLocation%\Duplicates\%localYYYY%\%localMM%" mkdir "%archiveLocation%\Duplicates\%localYYYY%\%localMM%"
copy %%f "%archiveLocation%\Duplicates\%localYYYY%\%localMM%"
echo %localDate% %localTime% Duplicate claims file: %%f File moved to archive >> "%logLocation%\Error.log"
)
我在做什么蠢事吗?我没有收到任何错误,当运行此脚本时,脚本只是爆炸了(我在这前后都有一个暂停命令,希望捕获一条消息,但什么也没有)
任何帮助都将不胜感激
谢谢大家 您应该在这两行上使用引号:
if exist "%archiveLocation%\%%~nxf" (
及
试试这个:
for %%f in ("%toLoadLocation%\*.*") DO if exist "%archiveLocation%\%%~nxf" (
IF NOT EXIST "%archiveLocation%\Duplicates" mkdir "%archiveLocation%\Duplicates"
IF NOT EXIST "%archiveLocation%\Duplicates\%localYYYY%" mkdir "%archiveLocation%\Duplicates\%localYYYY%"
IF NOT EXIST "%archiveLocation%\Duplicates\%localYYYY%\%localMM%" mkdir "%archiveLocation%\Duplicates\%localYYYY%\%localMM%"
copy "%%~f" "%archiveLocation%\Duplicates\%localYYYY%\%localMM%"
echo %localDate% %localTime% Duplicate claims file: %%f File moved to archive >> "%logLocation%\Error.log"
)
我仍然对每件事都引用名言。我没有误用括号吧?没关系,我错过了一个课外结束括号-谢谢!
for %%f in ("%toLoadLocation%\*.*") DO if exist "%archiveLocation%\%%~nxf" (
IF NOT EXIST "%archiveLocation%\Duplicates" mkdir "%archiveLocation%\Duplicates"
IF NOT EXIST "%archiveLocation%\Duplicates\%localYYYY%" mkdir "%archiveLocation%\Duplicates\%localYYYY%"
IF NOT EXIST "%archiveLocation%\Duplicates\%localYYYY%\%localMM%" mkdir "%archiveLocation%\Duplicates\%localYYYY%\%localMM%"
copy "%%~f" "%archiveLocation%\Duplicates\%localYYYY%\%localMM%"
echo %localDate% %localTime% Duplicate claims file: %%f File moved to archive >> "%logLocation%\Error.log"
)