Advertisement
BrainWaveCC

MoveDatedFolders.BAT

Feb 3rd, 2025 (edited)
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Batch 0.87 KB | Source Code | 0 0
  1. @REM - MoveDatedFolders.BAT (03 Feb 2025 // 03 Feb 2025): Move mm-dd-yy folders into yyyy folders
  2. @REM - Original Message: https://www.reddit.com/r/Batch/comments/1igptua/is_there_a_way_to_move_multiple_subfolders_to/
  3. @ECHO OFF
  4.  
  5. :Variables -- v1.0.1
  6.  SETLOCAL
  7.  SET "#N=[0-9][0-9]"
  8.  SET "#MMDDYY=%#N%.%#N%.%#N%"
  9.  SET "#YYYY=%#N%%#N%"
  10.  SET "#ROOT=C:\Temp\Testing"
  11.  
  12. :Main
  13. rem -- Cycle through folders for names with mm.dd.yy format, but not inside yyyy folders
  14.  FOR /F "TOKENS=*" %%F IN ('DIR /S /B "%#ROOT%" ^| FINDSTR /R "%#MMDDYY%" ^| FINDSTR /V /R "%#YYYY%"') DO CALL :MoveFolders "%%~F"
  15.  
  16. :ExitBatch
  17.  TREE "%#ROOT%"
  18.  ENDLOCAL
  19.  EXIT /B
  20.  
  21. :MoveFolders -- Move to appropriate destination folder, based on current folder name (%1 = current folder)
  22.  SET "#DEST=%~1"
  23.  SET "#DEST=%~1\..\20%#DEST:~-2%"
  24.  ECHO Moving "%~1" to "%#DEST%"
  25.  MOVE "%~1" "%#DEST%"
  26.  GOTO :EOF
  27.  
Tags: windows
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement