1

目前我有一个 7ZIP 命令批处理文件,该文件在今天的日期之前在子目录中 ZIPS 文件,并使用该日期创建一个 zip 文件。

"c:\Program Files\7-Zip\7z.exe" a x:\Logs\HS\%date:~10,4%%date:~4,2%%date:~7,2%\%date:~10,4%%date:~4,2%%date:~7,2%_HS.zip X:\Logs\HS\%date:~10,4%%date:~4,2%%date:~7,2%* -xr!*.zip

这是在每个月的每一天完成的

c:\20121018\20121018.zip
c:\20121019\20121019.zip

基本上我在同一个目录结构中也有一个 MONTH 文件夹。201210. 基本上我需要的是将带有今天日期的 zip 文件移动到其相应月份文件夹的任务。这将是未来的每个月。

任何指导将不胜感激。

4

1 回答 1

1

基本上你只需要

  1. 对于每个文件,从其名称中提取月份和年份部分
  2. 如果月份目录不存在,则创建它
  3. 将 zip 移动到月份目录

试试这个代码让你开始......

for %%a in (*.zip) do (
  set fn=%%a
  set year=!fn:~0,4!
  set month=!fn:~4,2!
  if not exist !year!!month!\nul echo md !year!!month!
  echo move "%%a" "!year!!month!\%%a"
)

测试它,删除 echo 命令,再次测试它......

于 2012-10-19T14:49:21.400 回答