Hola
Te has debido confundir al decir que los nombres contienen los caracteres "/" y "\" ya que son caracteres prohibidos por Windows, no pueden contenerlos.
quiero un bat u otro tipo ce archivo que me renombre todos los archivos eliminando los simbolos y colocando todas las letras en minuscula y la primera letra de las palabras en mayusculas.
Quieres y pides, ¿Pero has intentado hacerlo por ti mismo?, ¿Donde está el código?.
Ya que dejas libre la elección del lenguaje entonces yo te propongo VisualBasicScript porque es soportado natívamente por Windows, ya que Batch es fácil pero muy lento para estas cosas y además se queda corto en características obligando a escribir mucho código de más el cual se podría hacer de forma mucho más simple en cualquier otro lenguaje,
de todas formas si prefieres hacerlo en Batch puedes esperar la respuesta de algún otro Batchero o usar el buscador del foro donde encontrarás esta misma pregunta repetida 1000 veces con soluciones mías y de otros compañeros.
Te doy la mitad del trabajo hecho, la parte fácil de listar los archivos y renombrarlos puedes intentar hacerlo por ti mismo documentándote con ejemplos aquí ->
Top Secretstr = "LA_++L+UC+HA_P+OR_EL_AMOR"
str = FormatString(str) ' Llamamos a la función que formatea el String.
str = ConvertToWordCase(str) ' Llamamos a la función que convierte el String a ProperCase.
Wscript.Echo str ' Mostramos el String.
Wscript.Quit() ' Terminamos la ejecución del script.
' Funcs:
' ------
Function FormatString(ByVal String)
String = replace(String, "+","") ' Reemplazo el caracter "+" por NADA.
String = replace(String, "_"," ") ' Reemplazo el caracter "_" por ESPACIO.
FormatString = String ' Devuelvo el String formateado.
End Function
Function ConvertToWordCase(ByVal String)
words = split(String," ") ' Parto el String en varios tokens delimitados por el caracter ESPACIO y lo guardo en un Array.
For i = 0 to ubound(words) ' Recorro cada valor del Array, es decir, cada palabra.
' Convierto la primera letra a UpperCase.
words(i) = ucase(left(words(i),1)) _
& lcase(mid(words(i),2)) ' Y convierto las demás letras a LowerCase.
Next ' Prosigo con la siguiente palabra.
ConvertToWordCase = join(words," ") ' Junto el Array (Lo convierto a String) y lo devuelvo.
End Function
Output:
La Lucha Por El Amor
PD: Si muestras algún intento de proseguir con el código de arriba no tendré ningún inconveniente en ayudarte a completarlo.
Saludos!