Board logo

标题: [文件操作] [分享]批处理按照年和月把图片分类移动到子文件夹 [打印本页]

作者: Batcher    时间: 2023-3-20 11:29     标题: [分享]批处理按照年和月把图片分类移动到子文件夹

【问题描述】

寻找2021年1月的截图放到 时间轴\2021年\2021年01月\N截图202101
截图关键字screenshot
时间范围201501-202301
说白了我就说想吧每个月(2015年-2023年)的截图找出来放到每个文(2015年-2023年)件夹里

作者: Batcher    时间: 2023-3-20 11:30

【解决方案】

请参考Q-04把bat文件保存为ANSI编码:
https://mp.weixin.qq.com/s/Koje4FufWxWBs7ioDy_LJA

test-1.bat
  1. @echo off
  2. set "StartYear=2015"
  3. set "EndYear=2023"
  4. setlocal enabledelayedexpansion
  5. for /l %%y in (%StartYear%,1,%EndYear%) do (
  6.     for /l %%m in (1,1,12) do (
  7.         set "ThisMonth=%%m"
  8.         if %%m lss 10 (
  9.             set "ThisMonth=0%%m"
  10.         )
  11.         echo 正在处理:%%y年!ThisMonth!月
  12.         set "NewFolder=..\时间轴\%%y年\%%y年!ThisMonth!月\N截图%%y!ThisMonth!"
  13.         if not exist "!NewFolder!" (
  14.             md "!NewFolder!"
  15.         )        
  16.         for /f "delims=" %%i in ('dir /b /s /a-d *.jpg *.png 2^>nul ^| findstr /c:"%%y!ThisMonth!" /c:"%%y-!ThisMonth!"') do (
  17.             move "%%i" "!NewFolder!"
  18.         )
  19.     )
  20. )
  21. pause
复制代码

作者: qixiaobin0715    时间: 2023-3-20 12:43

  1. @echo off
  2. for /f "delims=" %%a in ('dir /b /s /a-d *.jpg *.png') do (
  3.     for /f "tokens=1,2 delims=/" %%i in ("%%~ta") do (
  4.         if not exist "..\时间轴\%%i年\%%i年%%j月\N截图%%i%%j" (
  5.             md "..\时间轴\%%i年\%%i年%%j月\N截图%%i%%j"
  6.         )
  7.     )
  8.     move "%%a" "..\时间轴\%%i年\%%i年%%j月\N截图%%i%%j\"
  9. )
  10. pause
复制代码





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2