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
| | |-+  SET /P sin valor declarado
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: SET /P sin valor declarado  (Leído 3,329 veces)
Orni1

Desconectado Desconectado

Mensajes: 30


Ver Perfil
SET /P sin valor declarado
« en: 21 Septiembre 2017, 12:33 pm »

He creado un bat para comprimir archivos con contraseña.

Con la variable
Código:
SET /P Pass= ^> Enter the value for the password in all rar files:

Pido la contraseña.

Con el código:

Código:
if exist %mpn% %temp%\adds\rar a -r -rr -v116M -p%Pass% compressed\%mpn% %mpn%.rar %mpn% 

if not exist compressed\%mpn%.rar goto rarerror
rmdir /s /Q %mpn%
goto inicio

:rarerror
    echo No se ha podido crear el archivo comprimido.
    pause >nul
    @cls&exit

Esto funciona bien (siempre que se le de valor a %Pass%).

El problema me surge cuando no pongo ningún valor declarado en Set /P
Si lo dejas en blanco y pulsas enter y el código corre hasta que llega -p%Pass% ahí queda bloqueado.

Qué puedo hacer para que si la variable %Pass% no tiene valor el código en la orden de compresión la salte, o a ultimo remedio si no se pone valor a set /p no se pueda continuar adelante hasta darle valor a la variable %Pass%.

Gracias por anticipado


« Última modificación: 21 Septiembre 2017, 21:18 pm por Orni1 » En línea

**Aincrad**


Desconectado Desconectado

Mensajes: 683



Ver Perfil WWW
Re: SET /P sin valor declarado
« Respuesta #1 en: 21 Septiembre 2017, 18:37 pm »

hola , soy Aincrad de nuevo.

pon este code :

Código
  1. @ECHO OFF
  2. color a
  3. goto pass1
  4. :passno
  5.          (  cls
  6.                 echo/
  7.                 echo/
  8.                 echo ===================================
  9.                 echo =     ATENCION                    =
  10.                 echo ===================================
  11.                 echo = Por favor Escriba la contraseña.=
  12.                 echo ===================================
  13.                 echo/
  14.                 echo/
  15.                     pause
  16.                       goto pass1
  17.                                        )
  18.  
  19. :pass1
  20.                  ( cls
  21.                      echo/
  22.      set /p "Pass=^> Enter the value for the password in all rar files:  "
  23.                if not defined pass (goto:passno)
  24.                                             goto continue
  25.             )
  26.  
  27. :continue
  28. cls
  29. echo tu contraseña es %pass%
  30. pause
  31.  


Listo es lo que querias . es en caso de que no escribas nada.

PD: porfavor colocar codigos dentro de las etiquetas correspondiente.

                              Comenta si te funciono




En línea



Orni1

Desconectado Desconectado

Mensajes: 30


Ver Perfil
Re: SET /P sin valor declarado
« Respuesta #2 en: 21 Septiembre 2017, 22:09 pm »

Disculpadme por el error de no poner la etiqueta en el código, lo he modificado espero haberlo hecho bien.

**Aincrad** gracias de nuevo por tu saber y tu tiempo, a ver si pillo un rato hoy y lo pruebo, aunque seguro que rula.

Entiendo a simple vista que la opción es poner valor a "pass" si o si, pero lo pruebo y comento

En línea

Orni1

Desconectado Desconectado

Mensajes: 30


Ver Perfil
Re: SET /P sin valor declarado
« Respuesta #3 en: 21 Septiembre 2017, 23:03 pm »

Funciona perfecto compañero, como he comentado antes, ya he comprobado que o pones valor a la variable o no hay tu tía...

Ya lo he implementado al que tenía así ha quedado

Código:
goto pass1
:passno
color a
          (  cls
echo.
echo         ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
echo         º                                    º
echo         º        ..:: Attention ::..         º
echo         º        will not be echoed          º
echo         º                                    º
echo         ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
echo.
                 echo/
echo      ============================================
echo      =          ..:: ATTENTION ::..             =
echo      ============================================
echo      = Please, Enter the value for the password.=
echo      ============================================
                 echo/
                 echo/
                     pause
                       goto pass1
                                        )
 
:pass1

                 ( cls
echo.
echo         ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
echo         º                                    º
echo         º        ..:: Attention ::..         º
echo         º        will not be echoed          º
echo         º                                    º
echo         ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
echo.
                      echo/
      set /p "Pass=^> Enter the value for the password in all rar files:  "
                if not defined pass (goto:passno)
                                             goto continue
             )
 
:continue
cls
echo.
echo.
echo           tu contraseña es %pass%
pause


he pasado el código de color a passno de tal modo que si no pones el pass saldrá todo el código en verde y si pones el pass el color sale por defecto.

Compi muchas gracias de nuevo por otra clase a esta pazguata que le queda mucho por aprender.

He aprovechado tu código anterior (el del =) para retomar un tema anterior que tenia aparcado precisamente por el mismo signo.

Todavía me viene grande este idioma pero con vosotros ya he aprendido a automatizar algunas tareas. Gracias de nuevo.
En línea

**Aincrad**


Desconectado Desconectado

Mensajes: 683



Ver Perfil WWW
Re: SET /P sin valor declarado
« Respuesta #4 en: 21 Septiembre 2017, 23:15 pm »

me alegro que te haya servido .  ;-)
         ;D  espero que no sea mucha molestia pero, podrías participar en la encuesta?

link:

http://foro.elhacker.net/programacion_general/encuesta_cual_lenguaje_es_el_mas_usado_en_el_foro_del_2192017_al_28092017-t474790.0.html
« Última modificación: 22 Septiembre 2017, 00:17 am por **Aincrad** » En línea



Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Como Obtener valor de un textbox, desde un valor, hasta otro valor [VB6]
Programación Visual Basic
revenge1252 4 6,834 Último mensaje 17 Julio 2012, 09:38 am
por BlackZeroX
Fondo mal declarado? Resuleto
Desarrollo Web
Puntoinfinito 0 1,669 Último mensaje 17 Diciembre 2012, 16:43 pm
por Puntoinfinito
SetInterval no esta declarado.
Desarrollo Web
bemone 3 2,478 Último mensaje 18 Marzo 2014, 05:24 am
por engel lex
Uber es declarado legal en Londres
Noticias
wolfbcn 0 1,124 Último mensaje 4 Julio 2014, 01:47 am
por wolfbcn
Ripear DVD puede ser declarado ilegal
Noticias
wolfbcn 2 2,069 Último mensaje 23 Marzo 2015, 21:22 pm
por Orubatosu
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines