Saludos;
Yo tengo que hacer algo parecido pero de la siguiente manera:
1.- El usuario indica (en numeros) el mes. Es decir que hay que validar que solo coloque dos caracteres y que sean numeros entre 01 y 12.
2.- Verificar si la carpeta mes con el año está creada. Ejemplo: Si el usuario indica 09 entonces la carpeta sería Septiembre2015.
3.- Si la carpeta no existe;se crea la carpeta con el mes y el año, ejemplo Septiembre2015
4.- Buscar en el directorio donde se está ejecutando el bath todas las carpetas cuya estructura sea año, mes, dia corresponda al mes de la carpeta que acabo de crear y mover esas carpetas a la que acabo de crear. Ejemplo
Si cree la carpeta miruta/Septiembre2015 y en miruta/ hay carpetas 20150901, 20150902 ... hasta 20150930 y moverla a miruta/Septiembre2015
Me podrías orientar en como hacerlo, no tengo ni idea.
Desde ya mil gracias....
Te ayudo un poquito... lo he programado en VBS en lugar de Bat/Batch, es un lenguaje mucho más sencillo de implementar bajo mi punto de vista:
'1.- El usuario indica (en numeros) el mes. Es decir que hay que validar que solo coloque dos caracteres y que sean numeros entre 01 y 12.
'2.- Verificar si la carpeta mes con el año está creada. Ejemplo: Si el usuario indica 09 entonces la carpeta sería Septiembre2015.
'3.- Si la carpeta no existe;se crea la carpeta con el mes y el año, ejemplo Septiembre2015
'4.- Buscar en el directorio donde se está ejecutando el bath todas las carpetas cuya estructura sea año, mes, dia corresponda al mes de la carpeta que acabo de crear y mover esas carpetas a la que acabo de crear. Ejemplo
'Si cree la carpeta miruta/Septiembre2015 y en miruta/ hay carpetas 20150901, 20150902 ... hasta 20150930 y moverla a miruta/Septiembre2015
Set oFSO = CreateObject("Scripting.FileSystemObject")
iMes = InputBox("Introduce el mes: ")
If isNumeric(iMes) = False Then
While isNumeric(iMes) = False
MsgBox "Solo se permiten valores numéricos", vbExclamation + vbOkOnly
iMes = InputBox("Introduce el mes: ")
Wend
End If
If iMes < 1 Or iMes > 12 Then
While iMes < 1 Or iMes > 12
MsgBox "Solo se permiten valores numéricos entre 1 y 12", vbExclamation + vbOkOnly
iMes = InputBox("Introduce el mes: ")
Wend
End If
Select Case iMes
Case 1
sMes = "Enero"
Case 2
sMes = "Febrero"
Case 3
sMes = "Marzo"
Case 4
sMes = "Abril"
Case 5
sMes = "Mayo"
Case 6
sMes = "Junio"
Case 7
sMes = "Julio"
Case 8
sMes = "Agosto"
Case 9
sMes = "Septiembre"
Case 10
sMes = "Octubre"
Case 11
sMes = "Noviembre"
Case 12
sMes = "Diciembre"
End Select
sFolder = sMes & Year(Now)
If oFSO.FolderExists(sFolder) = True Then
MsgBox "La carpeta " & sFolder & " ya existe", vbInformation + vbOkOnly
Else
MsgBox "La carpeta " & sFolder & " no existe", vbInformation + vbOkOnly
oFSO.CreateFolder(sFolder)
End If
Verás que el punto (4) no lo he programado, te lo dejo para ti
con el objeto oFSO podrás hacerlo sin problemas. Si tienes dudas pregunta, pero dale un poco al coco