elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Ingresar Registrarse
07 Septiembre 2008, 07:27  



+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General (Moderadores: Hendriҳ, E0N)
| | |-+  Tutorial de set By Th666_HaCk
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Imprimir
Autor Tema: Tutorial de set By Th666_HaCk  (Leído 99 veces)
zix

Desconectado Desconectado

Mensajes: 510


Cres que todo es imposible??


Ver Perfil
Tutorial de set By Th666_HaCk
« en: 25 Diciembre 2007, 04:59 »

Tutorial de set By Th666_HaCk

Hola a todos y bienvenidos a el tutorial del uso de Set en Programacion en Batch.

Para empezar tenemos que saber para que se utiliza el  set, set sirve para la creacion de variables
¿que es una variable?

Una variable es una estructura de datos que durante la ejecucion del programa pueden cambiar o variar.
en matematicas decimos

si r=4 y p=5

r+p=

En programacion es exactamente lo mismo
solo que debemos decirle que crearemos una variable de la siguente forma:

set nombre_variabl e=datos

descripcion:

primero usamos el comando set, luego le damos un nombre a nuestra variable, da lo mismo cual sea
puede ser h2, hola, var, myvar, etc.

luego signo = y luego los datos que queremos que el nombre de la variable represente y almacene.
y una vez creada la variable es necesario saber como operar con esta, en batch para operar con variables
se hace de la siguente forma

si ya emos declarado la variable, y queremos ver su informacion escribimos:

%nombre_Variable%
enserrando el nombre de la variable especificado con %%
si mi variables es hola
seria

%hola%


entonces un ejemplo seria

   @echo off
set var=Manuel
echo mi nombre es %var%
pause
exit

Lo guardamos como tutorial-set1. bat y lo ejecutamos, y veremos que al ejecutarlo no mostrara:
mi nombre es Manuel.

de esa forma podemos usar variable pero no tiene mucha gracia crear una variable para un nombre, mas que abreviarlo.

para hacer mas util set podemos crear variable con el texto introducido por el usuario que ejecute el programa.

para eso escribimos

set [/p] [var]=[Texto a mostrar] [Texto_escrito_por_el_usuario]

Bueno primero usamos /p para especificar que la variable sera especificada por un texto que esctiba el usuario

[var] es para darle un nombre correspondiente a la variable
[texto a mostrar] es para mostrar el texto que nos dira la variable variable.
[Texto_escrito_por_el_usuario] Aqui el usuario escribira texto que el desee.

un ejemplo seria:

   @echo off
set /p var=Cual es tu nombre:
echo Hola %var%
pause
exit

Guardamos y ejecutamos, y veremos que el programa se detendra hasta que escribamos algo y luego segira

entonces si ejecuto el programa me aparece lo siguente

Cual es tu nombre: Manuel [El usuario escribe texto]
Hola Manuel

ahora pueden crear programas preguntando al usuario y esperando una respuesta.

Set tambien tiene una funcion de aritmética, para realizar calculos. por ejemplo con esta funcion podemos crear
una calculadora simple. Pero primero veremos como funciona la aritmética en batch

para hacer un calculo creamos una variable que sera la respuesta, por ejemplo

set [/a] [var]=[2 + 2]

primero usamos set para declarar una nueva variable.

[/a] es para decirle a set que sera una variable de aritmética
[var] es para darle nombre a nuestra variable
[2 + 2] Es la operacion a realizar.

enteonces un ejemplo practico seria:

   @echo off
set /a var= 5 * 5
echo %var%
pause
exit

gaurdamos y ejecutamos, y veremos que no muestra 25
pero, ¿de qué me sirve hacer una multiplicacion si puedo escribir 25 sin pasar por la variable?
Bueno, la verdad no mucho pero si sirve para crear una calculadora,

bueno es un proyecto simple pero util.

para empezar nesesitamos saber las 2 sifras que el usuario desea calcular y la operacion que desea hacer.

2 sifras a calcular espesificadas por el usuario
Operacion por hacer ya sean:

 Sumar: +
 Restar: -
 Dividir: /
 Multiplicar: *

entonces usaremos 3 set /p para las 2 sifras y la operacion.

Hasta aqui con este tutorial para ver los resultados que han obtenido, solo posteen a continuacion.

TIP
Una ayuda que les puedo dar es que usen

   @echo off
set /p var1=
set /p var2=
set /p var3=
[Usen if]
set /a respuesta=%%  %%
echo %respuesta%


Segunda parte:

Bueno voy a explicar conceptos muy importantes y utiles dentro de el comando set

aveces cuando tenemos nuestro programa y escribimos en un menu espacio y apretamos enter se sale,
o cuando no savemos como es la variable pero queremos que cambie algun caracter no deseado, por ejemplo espacio y los remplaze por _
ser haria de la siguente forma

 @echo off
set var1=Hola como estas
echo %var1%
pause>nul
set var2=%var1: =_%
echo %var2%

les explico...

primero creamos una variable var1 que es hola como estas

y luego usamos esto:
set var2=%var1: =_%

lo que hace es crear una variable var2 a artir de var1 y remplaza los esapacio por _

con simbologia.

set var2=%var1:  =_%

set var2  : crea una variable var2
=          :a partir de...
%var1 :var1
:        :y va a tomar...
=            :todos los espacio y los va a cambiar por...
_%       :rayas abajo _

ahora
podemos aplicar esto con set /p para que no nos de ningun error en caso de que escriba una variable no deseada como: hola xd
---------------------------------------

ahora les viy a explicar el uso de %~x,x%

lo que hace esto es sacar un texto espesificado por numeros (Las x,x)

un ejemplo tipico es

 @echo off
echo %time%
set time2=%time:~0,-6%
echo %time2%

lo que hace es tomar la variable time

por ejemplo
16:17:42,52  = %time%

y crea una variable %time2% a partir de %time%
y le borra los ultimos 6 digitos

osea el :42,52

y queda

16:17

si escribimos

 @echo off
set a=%time:~6%
echo %a%
lo que hace es crear una variable a partir de time pero lo borra los primeros 6 dijitos

la verdad es simple, solo hay que jugar con los numeros
hasta que obtengamos lo que queremos

Espero que les ayude

Saludos$
En línea

Páginas: [1] Ir Arriba Imprimir 
Ir a:  







Consolas     La Web de Goku     MilW0rm     MundoDivx

Hispabyte     Truzone     TodoReviews     ZonaPhotoshop

hard-h2o modding    Foros de ayuda    Yashira.org    Videojuegos    indetectables.net   

Noticias Informatica    Seguridad Informática    ADSL    Foros en español    eNYe Sec

Todas las webs afiliadas están libres de publicidad engañosa.

Powered by SMF 1.1.5 | SMF © 2006-2008, Simple Machines LLC