Mi primer bat y mis dudas del resultado

Iniciado por Maedhroz, 30 Abril 2012, 04:01 AM

0 Miembros y 2 Visitantes están viendo este tema.

Maedhroz

Hola a todos, espero que este bien puesto esto aca...  :-\
Antes que todo gracias a la comunidad de gente que permite que gente como yo, que no tuvo ninguna cercanía con los números ni mucho menos xD, finalmente le tome el gusto por esto de escribir en el block de notas en un lenguaje que no hablo por default xD... y ya se darán cuenta al ver el codigo xD...


Bueno, voy a lo mío. Probablemente esto esté lleno de errores, pero funciona -gracias al milagroso metodo de ensayo-error xD-, aunque no sé que tan fiable sea.

Explico que se me ocurrio y luego lo que puse en el txt.

Mi intención era automatizar el proceso cuando alguien -que no sabe siquiera lo que es una extensión de archivo- baja un archivo comprimido en volúmenes que se renombra para compartirlos en algún sitio web.

El ejemplo, un video de una junta de amigos de un foro.

Junta.avi > comprimido por partes y con password *elhacker* -por ejemplo xD- queda como > Junta.avi.part01.rar , Junta.avi.part02.rar, Junta.avi.part03.rar.

Las 3 partes las renombro > IUOP, UIYI, HYGF.

Luego, mi idea era que la persona que baja esos 3 ultimos archivos no tenga que hacer nada mas que ejecutar un exe y se empezara a descomprimir el avi solo mostrandose un mensaje del tipo "continuara... xD".

Para eso hice lo siguiente, ya que no tenia -ni tengo, aun queda mucho por aprender- la mas minima idea de como poder hacerlo. Buscando info, pude hacer esto xD.

@echo off

ren IUOP Junta.avi.part01.rar
ren UIYI Junta.avi.part02.rar
ren HYGF Junta.avi.part02.rar


start winrar.exe x -Pelhacker "./Junta.avi.part01.rar" "./"
:atras

goto :pausa
:sigue

echo MsgBox " "  + vbCrLf + "continuara...xD", 64, "Advertencia!!" >%temp%\mensaje.vbs
start %temp%\mensaje.vbs

exit

:pausa
if exist "./Junta.avi" (goto :sigue) else (goto :atras)


Como ven es algo sencillo pero creanme que me costo mucho, no sabia como hacer para que descomprimiera en la carpeta exacta donde la persona bajaria los archivos, entre otras cosas  :-[ ... en fin...

Luego gracias al Quick Batch File Compiler pude pasar a exe -con modo silencioso para no ver la ventana-. Lo hice asi ya que el password va dentro del Bat y no hay que estar diciendoles a todos que deben poner. Evitando que quien se baja solo los rars, aunque pueda reordenar la numeracion de rars, no pueda descomprimir.

La buena noticia es que funciono, pero la mala al menos para mi es que me han dicho que tarda mas en descomprimir...

Entonces ahora vienen mis dudas...

¿Esta muy malo el codigo? y si acaso por eso me dicen que tarda mas de lo normal en descomprimir.


Bueno, gracias nuevamente ya que aca he aprendido cosas que ni sabia que se podian hacer.

Saludos.

$Edu$

Y porque la molestia? con que le hagas click derecho a la parte01.rar y le des a Extraer Aqui y pongas el pass ya empieza a descomprimirse solo.

Vos probaste el bat estas seguro? siento como que los renombres de archivos esta mal y todavia sin sentido alguno :/

Maedhroz

#2
Bueno, mi idea era que no se sepa que tipo de archivos son, y asi subirlos. No quiero que alguien que no sea de las personas que participaron de la junta los baje. Si los subo como parte 01, 02 etc, se sabra que son parte de otro archivo y no como archivos independientes sin relacion entre ellos... en fin... Pero esta discusion no resuelve mis dudas, sea o no "inutil" la creacion del bat, que humildemente, considero es parte de otro tema. -*los ejercicios para practicar conceptos y comandos, basicamente, son "codigos inutiles"... en fin...-

Y bueno, si, el bat funciona, ¿por qué no lo tendría que hacer?
Mi punto, como lo plantie, es si el tema de la demora en la descompresion que me hicieron saber tiene que ver con algo malo -sucio- que pudiera estar en el codigo o se debe a otros motivos.


En fin, saludos.

Eleкtro

#3
Cita de: Maedhroz en 30 Abril 2012, 04:01 AM
¿Esta muy malo el codigo? y si acaso por eso me dicen que tarda mas de lo normal en descomprimir.

Puede que si tarde más en descomprimir un archivo pesado por el simple hecho de que estás usando la versión por linea de comandos de WinRAR.
PD: No es algo que tenga solución.

Saludos!

EDITO: Si quieres simplificar el code...:

Código (DOS) [Seleccionar]
@echo off

Set "FileName=Junta.avi"
Set "Pass=elhacker"

:: Solo has de indicar el orden de los archivos falsos como te muestro en este ejemplo, Y se renombrarán automáticamente.
FOR /L %%$ IN (1,1,9) DO (
Rename "IUOP" "%FileName%.part0%%$.rar" 2>NUL
Rename "UIYI" "%FileName%.part0%%$.rar" 2>NUL
Rename "HYGF" "%FileName%.part0%%$.rar" 2>NUL
)
:: Detecta como se llama la "Parte 1" para no tener que indicarlo manualmente, Y la intenta descomprimir.
For /F "Tokens=*" %%# in ('Dir /B "*Part01.rar"') Do (Winrar x -p%PASS% "%%#" ".\" 1>NUL || Cls & Echo ERROR AL DESCOMPRIMIR. & Pause)
Echo MsgBox " "  + vbCrLf + "continuara...xD", 64, "Advertencia" > "%temp%\mensaje.vbs" && Start /B wscript "%temp%\mensaje.vbs"
Exit








Maedhroz

Genial! pusiste en menos palabras lo que ordené con más codigo! Quedó bastante más simple. Ahora sólo me toca revisar puesto que ocupaste comandos que no supe aplicar en este código. Con esto podré aprender más del tema. ¡Gracias!

Y yo que pensé que por linea de comandos sería más rápido  :-\... Originalmente pensé (aunque no tenía ni papa idea de como hacerlo y opté por el winrar) en que descomprimiera con una de esas aplicaciones (creo) nativas en DOS -no se si estoy mal pero- como los ARJ o ARC -no recuerdo bien-, PKZIP, etc. (?) y todo ese rollo de cuando el windows venía en diskettes y no en CD xD jejeje... Pero sólo alcancé a pensarlo porque de llevarlo a la práctica... jeje. Ni tampoco sé si me asegura que con los nuevos windows sea más rápido el proceso... En fin, temas pendientes a investigar.

(PD: Y si el winrar se ejecuta completamente desde la ventanita negra sin necesidad de que aparezca el entorno windows de "descomprimiendo"... ¿será posoible?, porque asumo -quizá equivocadamente- que el salto de una orden en por linea de comandos v/s iniciar entorno gráfico es lo que lo hace lento... insisto suposición que quizá esté equivocada.)

Gracias EleKtro H@cker! con esto tengo para seguir averiguando cosas.

Saludos!

Eleкtro

Cita de: Maedhroz en 30 Abril 2012, 15:51 PMPD: Y si el winrar se ejecuta completamente desde la ventanita negra sin necesidad de que aparezca el entorno windows de "descomprimiendo"... ¿será posoible?

He modificado el code para ocultar la salida, Pruebalo! Aunque la diferencia de tiempo debe ser mínima...

Saludos.








Maedhroz

Gracia por la ayuda. Revisaré y haré pruebas.
Saludos!