我需要将特定文件夹移动到不同的位置。示例C:\ Test \ Test2 \ ABCDEFGHI。我只能查看前五个字符,即文件夹名称的ABCDE,因为名称的其余部分每天都会更改。我有什么想法可以做到这一点吗?
感谢。
答案 0 :(得分:0)
假设你有一些foldername ......
@echo off
set foldername=C:\Test\Test2\ABCDEFGHI
call :GetFolderName5 "%foldername%"
pause
goto :eof
:GetFolderName5
set folder5chr=%~n1
set folder5chr=%~dp1%folder5chr:~0,5%
echo.%folder5chr%
goto :eof
答案 1 :(得分:0)
太好了,谢谢你的回复。我现在需要做的是将其纳入更多代码中。
当我发现此文件夹以ABCDE开头时,我需要将其复制到另一个位置。这是我一直在做的,但使用特定的文件夹名称,即(ECU)。在第一部分中,我还压缩了名为“Logfile”的任何文件夹。
所以回顾一下,而不是在C:\ ECU中移动所有内容,而是需要从ABCDE开始移动文件夹中的所有内容。抱歉这么久了!
感谢。
@echo off for / d / r“c:\ ecu”%% a in(Logfile *)do( if / i“%% ~nxa”==“Logfile”( 推动“%% a” REM压缩备份目录中的所有文件 FOR %% A IN( .TXT .cpi )DO“C:\ Program Files \ WinRAR \ WinRAR.exe”a -r“%% ~nA.zip” “%%一个” FOR %% A IN(* .TXT * .cpi)DO DEL“%% A” POPD ) )
@echo所有日志文件都已压缩。按Enter键将项目移动到备份? 暂停> NUL
xcopy / s“C:\ ECU”“C:\ Complete”
重命名“C:\完全”%日期:〜 - 10,2%%日期:〜-7,2%%日期:〜-4,4%
暂停