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

 

 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  BATCH [! Setlocal - primera ves los veo :|]
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: BATCH [! Setlocal - primera ves los veo :|]  (Leído 4,079 veces)
Esperpentor

Desconectado Desconectado

Mensajes: 39



Ver Perfil
BATCH [! Setlocal - primera ves los veo :|]
« en: 26 Junio 2010, 22:39 pm »

Saludos,

E estado buscando el funcionamiento de ! pero no lo hallo, resulta que estoy resolviendo un batch de un reto, pero no encuentro la info sobre el funcionamiento de ese !, ademas no se como funciona en realidad el set local ...
Código:
setlocal enabledelayedexpansion
title Batch III
set c= abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ/"=:()!%%0123456789
echo %c%
color %c:~60,1%d
echo off
set /P cadena="Ingrese la contraseña: "
set cadena=!cadena: =!

- Setlocal, necesitaria una explicacion mas humana que la me me ofrece la ayuda de winodws

- En --> set c= abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ/"=:()!%%0123456789

  - Si le hago un Echo %c% me devuelve: 
Código:
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ/"=:()%0123456789
  - Osea que paso con !% --> algo se de que se debe poner %% dos veces para que se muestre, lo aprendi hoy buscando aca, pero y el !, mas enigma para este caracter.

---- Y yo que pensaba que sabia Batch, al pasarme y buscar por aca me e dado cuenta que no se nada :o -----


En línea

leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 3.069


/^$/


Ver Perfil WWW
Re: BATCH [! Setlocal - primera ves los veo :|]
« Respuesta #1 en: 26 Junio 2010, 23:02 pm »

En este caso no sirve de nada, el caracter ! junto a setlocal sirve para expandir variables.

Es muy útil cuando estás dentro de ciclos FOR.

Mira esto:
Código
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set "string="
  4. for /l %%_ in (1, 1, 10) do (
  5. rem Usando %% no se expande la variable, es necesario !!
  6. set "string=%string%*"
  7. )
  8. echo %string%

Ahora usando !!:
Código
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set "string="
  4. for /l %%_ in (1, 1, 10) do (
  5. rem Usando %% no se expande la variable, es necesario !!
  6. set "string=!string!*"
  7. )
  8. echo %string%


En línea

Código
  1. (( 1 / 0 )) &> /dev/null || {
  2. echo -e "stderrrrrrrrrrrrrrrrrrr";
  3. }
  4.  
http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[BATCH] Detectar primera ejecucion y guardar datos
Scripting
EAMP14 2 2,937 Último mensaje 5 Abril 2012, 18:46 pm
por EAMP14
Batch script --> Informacion SETLOCAL & ENDLOCAL
Scripting
juanjo86 3 2,662 Último mensaje 14 Octubre 2013, 09:54 am
por juanjo86
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines