elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  [BATCH] (RESUELTO) AYUDA RENOMBRADOR AVANZADO
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [BATCH] (RESUELTO) AYUDA RENOMBRADOR AVANZADO  (Leído 1,177 veces)
54n4r0r

Desconectado Desconectado

Mensajes: 2


Ver Perfil
[BATCH] (RESUELTO) AYUDA RENOMBRADOR AVANZADO
« en: 9 Abril 2016, 17:20 pm »

Haber antes que nada no es un renombrador "normal" como tal...

El problema es el siguiente:

Tengo archivos dentro de una carpeta register\data en la ubicación del batch, los archivos son *.jpg y estan enumerados desde el 0 hasta el infinito. Lo que necesito es renombrarlos al revés, de tal manera que si hay 100 archivos irán desde el numero 0 al 99, el 99 pasaría a ser el numero 0, el 98 el numero 1, el 97 el numero 2 hasta el 0 que quedaría siendo el numero 99.

Luego de buscar información al respecto aún no he logrado resolver mi problema, sin más pude crear el siguiente código:

Código:
@echo off
set /a count=0
REM Coloco de valor -1 para cuando inicie el for se ponga en 0
set /a ren=-1
REM Aqui solo cuento la cantidad de archivos
for %%x in ("%~d0%~p0\register\data\*.jpg") do (set /a count+=1)
setlocal
for %%i in ("%~d0%~p0\register\data\*.jpg") do (
REM Si la cuenta llega a 100 le resto 1 para tener el valor de 99
set /a count=%count%-1
REM Aqui tendria el valor de 0
set /a ren=%ren%+1
REM De tal manera que el archivo 99 se renombraria en teoria por el 0
ren "%~d0%~p0\register\data\%count%.jpg" "%ren%.jpg"
)
endlocal
REM me muestra el total de archivos
echo en total hay %count% archivos
pause
exit

Ahora bien, el código me salta con errores de NO SE ENCUENTRA EL ARCHIVO habiendo 1, 2 o mas archivos en la carpeta especificada. Otro dato interesante es que si funcionara correctamente en teoria debería saltar error dado que al renombrar el archivo 99 por 0, ya hay un archivo q se llama 0, pienso resolverlo moviendo los archivos pero igual quedo suscrito a cualquier sugerencia.

MUCHAS GRACIAS DE ANTEMANO, en espera de su valiosa ayuda.


« Última modificación: 9 Abril 2016, 19:04 pm por 54n4r0r » En línea

54n4r0r

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: [BATCH] (RESUELTO) AYUDA RENOMBRADOR AVANZADO
« Respuesta #1 en: 9 Abril 2016, 19:05 pm »

Con el siguiente código he logrado solventar mi problema.

Código:
@echo off
set count=0
set ren=-1
for %%x in ("%~d0%~p0\register\data\*.jpg") do (
set /a count+=1
)
setlocal
for %%i in ("%~d0%~p0\register\data\*.jpg") do (
set /a count-=1 & set /a ren+=1
) & call :ren
endlocal
echo En total hay %count% archivos
pause > nul
exit

:ren
echo count=%count% , ren=%ren%
pause > nul
set rename=r%ren%
ren "%~d0%~p0\register\data\%count%.jpg" "%rename%.jpg"
goto :eof


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Batch avanzado
Scripting
DProduct 3 4,459 Último mensaje 27 Diciembre 2014, 21:19 pm
por Eleкtro
{Resuelto} [Batch Help!] ayuda con conversion de caracteres.. « 1 2 »
Scripting
xassiz_ 13 6,199 Último mensaje 18 Septiembre 2009, 21:35 pm
por Guerrerohgp
¿Algún renombrador de archivos para batch?
Scripting
Eleкtro 0 1,644 Último mensaje 30 Noviembre 2011, 07:40 am
por Eleкtro
Un renombrador en batch para imagenes
Scripting
free-articles 6 3,772 Último mensaje 27 Mayo 2013, 21:15 pm
por Eleкtro
[URGENTE][AYUDA][BATCH][RESUELTO]
Scripting
ByEmalml 3 1,770 Último mensaje 29 Abril 2014, 01:26 am
por ByEmalml
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines