Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: Darioxhcx en 5 Agosto 2016, 02:15 am



Título: Quitar ultimas palabras en el nombre del archivo
Publicado por: Darioxhcx en 5 Agosto 2016, 02:15 am
Buenas.. miren tengo una consulta, nunca habia llegado a esta parte del for, pero bueno..  :silbar:

resulta que me descargue 291 caps de dragon ball ja y los archivos se llaman

(001) DBZ (web.com.ar)
(002) DBZ (web.com.ar)

lo que necesitaria es solo "eliminar" lo que esta dentro del parentesis.

creo que algo como

Código:
@echo off
for /R %%c in ( * ) do ren %%ACA ME TRABE JAJAJA  :xD :xD :laugh: :laugh: :¬¬

Alguno me da una mano? nunca fui bueno con el token, delims y esas cosas :V
graxie


Título: Re: Quitar ultimas palabras en el nombre del archivo
Publicado por: Eleкtro en 5 Agosto 2016, 11:49 am
Hola

Puedes hacerlo de la siguiente manera:

Código:
@Echo Off & Setlocal EnableDelayedExpansion

For %%f In ("*.avi") DO (
    Set "filename=%%~nf"
    Set "filename=!filename: (web.com.ar)=!"
    Echo "%%~nxf" -^> "!filename!%%~xf"
    Rename "%%~ff" "!filename!%%~xf"
)

Pause & Exit

Notas:
 - Reemplaza ".avi" por la extensión correcta.
 - Si realmente necesitases utilizar la recursión de archivos (For /R), antes de rintentar renombrar el archivo deberías asignar el directorio de trabajo para que sea el mismo directorio donde se encuentra el archivo a renombrar (lo puedes hacer de forma sencilla con el comando PUSHD y POPD y el modificador de la variable de For: %%~pd)

Saludos