первый параметр имя файла со списком, второй каталог откуда начинает создавать иерархию каталогов.
В строках не должно быть пробелов и символов \|/ :?*"<>
@echo off
set sp=%~2
if ["%sp%"]==[""] set sp=.
for /f %%a in (%~1) do echo %%a&&set p=%sp%&&call :m %%a
exit
:m
set s=%~1
set b=%s:~0,1%
set o=%s:~1%
@echo %b%|findstr /R "[ABCDEFGHIJKLMNOPQRSTUVWXYZ]" && set b=!%b%
set p=%p%\%b%
md %p% 1>nul 2>nul
if not ["%o%"]==[""] call :m "%o%"
goto :eof