Page 1 of 1

Create directory based file name

Posted: 02 Nov 2011 17:00
by darioit
Hello everybody,

I have many files called 20100620(202205).m2ts

I'd like to move each file in a new directory based on name file (date in this case, position 1-8))

Dir 20100620(202205).m2ts
Mkdir c:\main\2010-06-20
move 20100620(202205).m2ts c:\main\2010-06-20

Thanks in advance

Dario

Re: Create directory based file name

Posted: 03 Nov 2011 15:52
by trebor68
The first eight numbers "yyyymmdd" making to string "yyyy-mm-dd".
If the folder not exist will make a new folder.
Move the file to the folder.

Code: Select all

@echo off
setlocal ENABLEDELAYEDEXPANSION
for %%a in (*.m2ts) do (
  set name=%%a
  set num1=!name:~0,4!
  set num2=!name:~4,2!
  set num3=!name:~6,2!

  set name2=!num1!-!num2!-!num3!
  if not exist c:\main\!name2! mkdir c:\main\!name2!
  move !name! c:\main\!name2!
)

Re: Create directory based file name

Posted: 08 Nov 2011 04:45
by darioit
it's works great, many thanks