RE:Sobre variables en batch
Puedes hacerlo haci
hay una variable llamada %time% que muestra la hora de la siguente forma
por ejemplo
14:49:50,56
HR:MIN:SEG,Mil
HR=Horas
MIN:Minutos
SEG:segundos
Mil: Milesimas
entonces
supongamos que solo queres la hora y los minutos
osea HR:MIN
14:49
entonces
set hora=%time:~0,6%
eso crea una variable a partir de time (14:49:50,56) y le borra los ultimos 6 caracteres
queda
14:49
y para remplazar los dos puntos por cualquer cosa ya sea - / * _ o tansolo juntarlo para que quede como la hora militar xd 1449
setia haci
set hora=%hora::=%
eso cambia los : por nada si queres cambiarlo por algo seria aci
set hora=%hora::=lo que queras%
resumen
set hora=%time:~0,-6%
set hora=%hora::=%
echo hola >> %hora%.txt
eso deveria funcionar