Renombrar ciertos caracteres mediante un prog Batch

Como andas gggirald, debido a tu gran reputación en la categoría de MS-DOS, me animé a consultarte mi inquietud:
Quiero renombrar un archivo mediante un proceso bat pero que realize lo siguiente:
El archivo se llama "texto - 01.txt" y quiero renombrarlo a 01.txt
Es decir borrar "texto - "
¿Es posible hacerlo mediante el comando ren? ¿O tendría que usar algún otro tipo de comando combinado?
Si bien pensé en hacerlo con un FOR que recorra hasta el primer carácter que quiero dejar, pero no se como dejar un carácter vacío en la cadena.

1 respuesta

Respuesta
1
¿La parte a borrar ("texto - ") es fija o lo único fijo es " - "?
Saludos,
GGG
Te escribo un ejemplo con 3 archivo de como serian, en mi caso son más:
Floyd - 01 - Cancion 1.mp3
Floyd - 02 - Cancion 2.mp3
Floyd - 03 - Cancion 3.mp3
y asi sigue...
Lo que quiero dejar de cada archivo es:
01 - Canción 1.mp3
02 - Canción 2.mp3
03 - Canción 3.mp3
Espero que se haya entendió y a la espera de tu rta
Saludos
damimg
Todavía no me queda claro si en todos los casos quieres que desaparezca "Floyd" o si lo que quieres es lo que está antes del primer guión (en el ejemplo que aportas sería "Floyd" pero en otros archivos del mismo directorio podría ser "Pink" por ejemplo). He partido de esta segunda posibilidad (por ser más amplia y valer para los dos casos) y esto es lo que he fabricado:
@ECHO off
Setlocal EnableDelayedExpansion
if "%1" == "" GOTO ayuda
CD %1
FOR /F "tokens=*" %%A IN ('dir /B /A-d') DO (call :buscar "%%A")
GOTO :EOF
:buscar
SET var=%1
SET nombre=%var:"=%
FOR /L %%i IN (0, 1, 30) DO (call :tratar %%i)
GOTO :EOF
:tratar
SET c=!nombre:~%1,3!
IF "%c%" NEQ " - " GOTO :EOF
SET /a cont=%1 + 3
REN "%nombre%" "!nombre:~%cont%!"
GOTO FIN
:Ayuda
Echo Renombra archivos eliminando lo que haya delante de la cadena " - "
Echo Formato: renomb directorio
Echo Ejemplo:
echo           renomb d:\musica
:FIN
Lo salvas en un archivo que se llame RENOMB.BAT (si quieres que el texto de la ayuda valga como está) o con cualquier otro nombre. Al ejecutarlo hay que pasarle el path (carpeta o directorio) donde están los archivos que quieres renombrar.
Si tienes alguna duda ya sabes donde estoy.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas