I managed to make it work. I am attaching the version of the code in this form and I will also come up with a version with a single for loop.
If someone wants to optimize this solution, it is free and I really encourage it. Thank you very much!
UPDATE: I made an optimized version. Thanks to @Mofi
@echo off
setlocal EnableExtensions EnableDelayedExpansion
pushd "%~dp0"
set "filesInfolder=60"
set "foldersInfolders=15"
set "fcount=0"
set "fcounta=0"
set idx=0
set idxa=0
for /F "delims=" %%I in ('dir /a-d /o:n /b *.mp4') do (
REM echo Processing %%I
set /a idx=idx %% filesinfolder +1
if !idx! == 1 set /a fcount+=1
md Videos-!fcount! 2>nul
move "%%I" "Videos-!fcount!\"
)
for /D %%A in (*.*) do (
REM echo Processing %%A
set /a idxa=idxa %% foldersinfolders +1
if !idxa! == 1 set /a fcounta+=1
md Canal-!fcounta! 2>nul
move "%%~fA" "Canal-!fcounta!\"
)
endlocal
Later edit:
Now the directories ordered alphabetically by name.
Videos-1, Videos-10, Videos-11, ... Video-19
I need them in a natural alphanumeric order
I found a temporary solution that renames all my internal folders in a row, but at the end I will explain in a folder structure how will be more nice for me to be.
I just modified:
md Videos-!fcount! 2>nul
move "%%I" "Videos-!fcount!\"
and made it
md Videos-!fcount!-123 2>nul
move "%%I" "Videos-!fcount!-123\"
I have the files in MP4-files folder
───MP4-files Folder
│ ├───file.mp4 - (1)
│ ├───file.mp4 - (10)
│ ├───file.mp4 - (11)
│ ├───file.mp4 - (2)
│ ├───file.mp4 - (3)
│ ├───file.mp4 - (4)
│ ├───file.mp4 - (5)
│ ├───file.mp4 - (6)
│ ├───file.mp4 - (7)
│ ├───file.mp4 - (8)
│ └───file.mp4 - (9)
Here I run the batch file above (with that small modification -123 )
and all .mp4 files are moved first in Videos-1, Videos-2 ... Videos- xx , depends how many .mp4 files I have in folder.
Each of the Videos folders have mp4 files in it (deppends how many I wrote in script) set "filesInfolder=60" is now, but can be different.
After that the folders Videos-1 .. Videos-xx are grouped in other folders with the name of "Canal-1 .. Canal-10 .. Canal-x" in order. the number of folders deppends on how many Videos folders. How many I group is here set "foldersInfolders=15" can be 15 or other number.
I get this:
─MP4-files Folder
│ ├───Canal-1 -> (set "foldersInfolders=15")
│ │ ├───Videos-1-123 (inside are the .mp4 files) -> set "filesInfolder=60"
│ │ ├───Videos-10-123
│ │ ├───Videos-100-123
│ │ ├───Videos-101-123
│ │ ├───Videos-102-123
│ │ ├───Videos-103-123
│ │ ├───Videos-104-123
│ │ ├───Videos-105-123
│ │ ├───Videos-106-123
│ │ ├───Videos-107-123
│ │ ├───Videos-108-123
│ │ ├───Videos-109-123
│ │ ├───Videos-11-123
│ │ ├───Videos-110-123
│ │ └───Videos-111-123
│ ├───Canal-2
│ │ ├───Videos-12-123
│ │ ├───Videos-13-123
│ │ ├───Videos-14-123
│ │ ├───Videos-15-123
│ │ ├───Videos-16-123
│ │ ├───Videos-17-123
│ │ ├───Videos-18-123
│ │ ├───Videos-19-123
│ │ ├───Videos-2-123
│ │ ├───Videos-20-123
│ │ ├───Videos-21-123
│ │ ├───Videos-22-123
│ │ ├───Videos-23-123
│ │ ├───Videos-24-123
│ │ └───Videos-25-123
│ ├───Canal-3
│ │ ├───Videos-26-123
│ │ ├───Videos-27-123
│ │ ├───Videos-28-123
│ │ ├───Videos-29-123
│ │ ├───Videos-3-123
│ │ ├───Videos-30-123
│ │ ├───Videos-31-123
│ │ ├───Videos-32-123
│ │ ├───Videos-33-123
│ │ ├───Videos-34-123
│ │ ├───Videos-35-123
│ │ ├───Videos-36-123
│ │ ├───Videos-37-123
│ │ ├───Videos-38-123
│ │ └───Videos-39-123
Then I run the following batch file:
@Echo off
set Cnt=0
for /f "delims=" %%A in (
'dir /B /S /AD Videos-* ^| findstr /iV "^Videos-[0-9][0-9]*$" '
) Do Call :RenInc "%%A"
PopD
Goto :Eof
:RenInc
Set /A Cnt+=1
if Exist "Videos-%Cnt%" goto :RenInc
Ren "%~1" "Videos-%Cnt%"
and I get the following folder structure:
──Video-15-sec
│ ├───Canal-1
│ │ ├───Videos-1
│ │ ├───Videos-2
│ │ ├───Videos-3
│ │ ├───Videos-4
│ │ ├───Videos-5
│ │ ├───Videos-6
│ │ ├───Videos-7
│ │ ├───Videos-8
│ │ ├───Videos-9
│ │ ├───Videos-10
│ │ ├───Videos-11
│ │ ├───Videos-12
│ │ ├───Videos-13
│ │ ├───Videos-14
│ │ └───Videos-15
│ ├───Canal-2
│ │ ├───Videos-16
│ │ ├───Videos-17
│ │ ├───Videos-18
│ │ ├───Videos-19
│ │ ├───Videos-20
│ │ ├───Videos-21
│ │ ├───Videos-22
│ │ ├───Videos-23
│ │ ├───Videos-24
│ │ ├───Videos-25
│ │ ├───Videos-26
│ │ ├───Videos-27
│ │ ├───Videos-28
│ │ ├───Videos-29
│ │ └───Videos-30
│ ├───Canal-3
│ │ ├───Videos-31
│ │ ├───Videos-32
│ │ ├───Videos-33
│ │ ├───Videos-34
│ │ ├───Videos-35
│ │ ├───Videos-36
│ │ ├───Videos-37
│ │ ├───Videos-38
│ │ ├───Videos-39
│ │ ├───Videos-40
│ │ ├───Videos-41
│ │ ├───Videos-42
│ │ ├───Videos-43
│ │ ├───Videos-44
│ │ └───Videos-45
│ ├───Canal-4
It is nice, but more nice for me if i can get the following folder structure after I run 1 single time the first Batch file attached in this Answer.
──Video-15-sec
│ ├───Canal-1
│ │ ├───Videos-1
│ │ ├───Videos-2
│ │ ├───Videos-3
│ │ ├───Videos-4
│ │ ├───Videos-5
│ │ ├───Videos-6
│ │ ├───Videos-7
│ │ ├───Videos-8
│ │ ├───Videos-9
│ │ ├───Videos-10
│ │ ├───Videos-11
│ │ ├───Videos-12
│ │ ├───Videos-13
│ │ ├───Videos-14
│ │ └───Videos-15
│ ├───Canal-2
│ │ ├───Videos-1
│ │ ├───Videos-2
│ │ ├───Videos-3
│ │ ├───Videos-4
│ │ ├───Videos-5
│ │ ├───Videos-6
│ │ ├───Videos-7
│ │ ├───Videos-8
│ │ ├───Videos-9
│ │ ├───Videos-10
│ │ ├───Videos-11
│ │ ├───Videos-12
│ │ ├───Videos-13
│ │ ├───Videos-14
│ │ └───Videos-15
│ ├───Canal-3
│ │ ├───Videos-1
│ │ ├───Videos-2
│ │ ├───Videos-3
│ │ ├───Videos-4
│ │ ├───Videos-5
│ │ ├───Videos-6
│ │ ├───Videos-7
│ │ ├───Videos-8
│ │ ├───Videos-9
│ │ ├───Videos-10
│ │ ├───Videos-11
│ │ ├───Videos-12
│ │ ├───Videos-13
│ │ ├───Videos-14
│ │ └───Videos-15
│ ├───Canal-4
Thank you a lot