Check the new version here

Popular channels

Aprende batch desde cero (by txshack)

Bueno pimero que nada es mi primer post y bueno no creo que tenga mas de 10 puntos bueno aqui esta el tutorial saludos silvestre001

CURSO DE PROGRAMACION EN BATCH PARA PRINCIPIANTES
A AQUELLAS PERSONAS QUE COMIENZAN A PROGRAMAR
POR TXSHACK


INRODUCCION:

Este curso va destinado para Newbies que aun no han comenzado a programar. Intentare explicarlo todo lo mas claro y preciso que pueda. Si ustedes ya han programado alguna vez, no se molesten en leerlo, no aprenderan nada nuevo puesto que como ya e dicho, es para aprender.
El curso lo are por capitulos, escriviendo uno cada dia o dos dias para que vallan con calma y practicando lo aprendido. Les recomiendo hacer los ejercicios ustedes mismos a la vez que sigen el curso para que puedan aprender bien.

Los unicos requisitos son; el bloc de notas, paciencia e intentar entender lo que se hace


CAPITULO UNO:
MI PRIMER PROGRAMA .BAT

En este primer capitulo crearemos nuestro primer programa, usando los comandos mas basicos de la programcion en batch.

Abran el bloc de notas.
A continuacion escrivan

@echo off

Asi sera como empesemos siempre el programa
A continuacion escriviremos es titulo del programa, para ello pondremos title seguido de su titulo, ejemplo:

@echo off
title mi primer programa txshack


De esta forma nuestro programa tendra el nombre de, "mi primer programa txshack"

Ahora les mostrare una serie de comandos basicos que deven de aprender, les aconsejo que lo apunten en un papel para tenerlos siempre presentes.

echo. sirve para dejar un espacio de linea en el programa. Es lo equivalente a pulsar intro en el word

echo este sirve para mostrar un mensaje en el programa

rem este sirve para mostrar un mensaje pero que no se vera en el programa, es decir tan solo se vera en el modo ediciom osea donde estamos ahora, en el bloc de notas..(suel escrivirse para acer tus aclaraciones, y que no te parezca lioso, por ejemplo decir, asta aqui la introduccion, asta aqui las preguntas, apartir de aqui ire acabando las operaciones...etc)

pause sirve para acer una pausa en el programa, es decir, una vez llegados ahi, nos dira el programa... pulse una tecla para continuar... en cambio si escrivimos pause > nul no nos lo preguntara, es decir, daremos una tecla y continuara.

exit esta sirve para acabar el programa, para salir de el....

Bien una vez dicho esto, podremos crear nuestro primer programa.
Abran el bloc de notas si aun no lo han echo y escriban..
Cita:
@echo off
title mi primer programa txshack
echo.
echo comentario
echo.
pause
echo.
echo este es mi primer programa jejeje siiiiii
pause > nul
rem y aca ya se acaba, esto no lo leere pero me sirve de aclaracion
exit


Aora le dan a guardar como y lo llaman por ejemplo 1ºprogramacontxshack.bat o lo que quieran, pero deve ser loquesea.bat

Aora veran que se a creado un programa que tiene el icono como de una ventana blanca con una rueda dentada dentro, pues ese es nuestro programa!! ejecutenlo y vean!!

Despues intenten entender el codigo, y veran lo sencillo que es...

En el proximo capitulo les enseñare como hacer que el programa te aga preguntas y tu responderlas...etc

No se impacienten!! jeje
Espero que les ayude.

Un saludo, txshack

CAPITULO 2: LAS VARIABLES


spero que les quedase claro lo que dimos en el capitulo numero. Fue una cosa sencilla no?
Ahora pasaremos a las variables.

Una variable, es una especie de memoria a la que podemos asignarle un dato, para acerlo referencia mas adelante. Para entenderlo, lo mejor es que agamos un ejemplo.
Cita:
@echo off
title ejemplos
set var=capullo
echo eres un %var%
pause


Como veran comenzamos con @echo off y seguimos poniendo un titulo, en este caso lo he llamado ejemplos. (asta aki ya lo sabian no??)
a continuacion al poner set var=capullo ace que la palabra capullo se muestre cuando ponemos var entre %% de esta forma, cuando ponemos eres un %var% el programa nos muestra, eres un capullo jejeje, esto es un ejemplo, vean.



han visto no?? asi pueden acer todo lo que se les ocurra...lo q deven recordar es que tiene q empezar por set unapalabra= loquequieras y para acer luego referencia a loquequieras, menten entre %% la palabra seguida de set, de esta forma %unapalabra%

por si no les quedo claro, les pondre otro ejemplo.. lo mejor es que lo agan ustedes mismos tambien...
Cita:
@echo off
title ejemplo2
set uno=soy txshack
set dos=espero que aprendas
echo hola amigos %uno%
echo.
pause > nul
echo.
echo %dos%
echo.
pause


Espero que lo ayan entendido ya...

Ahora pasemos a otro tipo de variables, son muy parecidas.... Estas hacen que puedas escrivir algo, y q el que ejecute el bat responda, y acer mas tarde referencia a esa respuesta... Con un peqeño ejemplo lo veremos mejor...
Cita:
@echo off
title ejemplo3
set/p nombre= ¿como te llamas?
echo.
pause
echo.
set/p edad= ¿y cuantos años tienes?
echo.
pause
echo.
echo te llamas %nombre% y tienes %edad% años
echo.
pause > nul
exit


Han entendido no?? este seria el resultado:



Ahora les enseñare otros comandos que deverian de sumar a los del primer capitulo... (esos que les dije apuntasen en un papel jeje)

Esos comandos son los suiguientes...

set xxxxx= xxxxx
set/p xxxx= xxxxx
No ace falta explicar cada una de nuevo no??
cls esta no la e empleado aun, pero sirve para limpiar lo anterior escrito..... imaginen que acemos un programa como el anterior, en que preguntamos nombre, edad, donde vives, apellidos...etc y cuando digamos lo de te llamas .... y apellidas ... y años.... para que no quede todo en pantalla y nos agamos un lio, ponemos cls y cuando llege ahy borrara lo anterior y continuara con el codigo... Benga, les ago el ejemplo...
Cita:
@echo off
title ejemplo4
set/p nombre= ¿como te llamas?
echo.
pause
echo.
set/p edad= ¿y cuantos años tienes?
echo.
pause
echo.
set/p vive= ¿y donde vives?
echo.
pause
cls
echo te llamas %nombre% y tienes %edad% años y vives en %vive%
echo.
pause > nul
exit


han visto no?? si no hacen los codigos, por lo menos les aconsego que lo agan con los mios, den a copiar y pegar para que les sirva de ejemplo. Vallan provando, es la mejor forma de acordarte de ello y coger soltura

Y bueno, si se an quedado con esto... por oy ya es bastante...

Ah!! una ultima cosa.. les voy a dar ya los codigos de colores para que experimenten a cambiar el color a la ventana del programa. Es facil de usar, deven poner, color seguido de un numero y letra (color de letras y de fondo)... prueven....

CODIGO DE COLORES:

0 = Negro
1 = Azul
2 = Verde
3 = Aguamarina
4 = Rojo
5 = Púrpura
6 = Amarillo
7 = Blanco
8 = Gris
9 = Azul claro
A = Verde claro
B = Aguamarina claro
C = Rojo claro
D = Púrpura claro
E = Amarillo claro
F = Blanco brillante

Os dejo un ejemplo del anterior, ejmplo3, para que vean como se meten los colores
Cita:
@echo off
title ejemplo4
color 5e
set/p nombre= ¿como te llamas?
echo.
pause
echo.
set/p edad= ¿y cuantos años tienes?
echo.
pause
echo.
set/p vive= ¿y donde vives?
echo.
pause
cls
color 2f
echo te llamas %nombre% y tienes %edad% años y vives en %vive%
echo.
pause > nul
exit




Espero que asta aqui lo hallan entendido, si necesitan alguna aclaracion o no entienden algo. No duden en postear.

Continuaremos el proximo dia. Un saludo. TxShack


spero que les quedase claro lo que dimos en el capitulo numero. Fue una cosa sencilla no?
Ahora pasaremos a las variables.

Una variable, es una especie de memoria a la que podemos asignarle un dato, para acerlo referencia mas adelante. Para entenderlo, lo mejor es que agamos un ejemplo.
Cita:
@echo off
title ejemplos
set var=capullo
echo eres un %var%
pause


Como veran comenzamos con @echo off y seguimos poniendo un titulo, en este caso lo he llamado ejemplos. (asta aki ya lo sabian no??)
a continuacion al poner set var=capullo ace que la palabra capullo se muestre cuando ponemos var entre %% de esta forma, cuando ponemos eres un %var% el programa nos muestra, eres un capullo jejeje, esto es un ejemplo, vean.

han visto no?? asi pueden acer todo lo que se les ocurra...lo q deven recordar es que tiene q empezar por set unapalabra= loquequieras y para acer luego referencia a loquequieras, menten entre %% la palabra seguida de set, de esta forma %unapalabra%

por si no les quedo claro, les pondre otro ejemplo.. lo mejor es que lo agan ustedes mismos tambien...
Cita:
@echo off
title ejemplo2
set uno=soy txshack
set dos=espero que aprendas
echo hola amigos %uno%
echo.
pause > nul
echo.
echo %dos%
echo.
pause


Espero que lo ayan entendido ya...

Ahora pasemos a otro tipo de variables, son muy parecidas.... Estas hacen que puedas escrivir algo, y q el que ejecute el bat responda, y acer mas tarde referencia a esa respuesta... Con un peqeño ejemplo lo veremos mejor...
Cita:
@echo off
title ejemplo3
set/p nombre= ¿como te llamas?
echo.
pause
echo.
set/p edad= ¿y cuantos años tienes?
echo.
pause
echo.
echo te llamas %nombre% y tienes %edad% años
echo.
pause > nul
exit


Han entendido no?? este seria el resultado:

Ahora les enseñare otros comandos que deverian de sumar a los del primer capitulo... (esos que les dije apuntasen en un papel jeje)

Esos comandos son los suiguientes...

set xxxxx= xxxxx
set/p xxxx= xxxxx
No ace falta explicar cada una de nuevo no??
cls esta no la e empleado aun, pero sirve para limpiar lo anterior escrito..... imaginen que acemos un programa como el anterior, en que preguntamos nombre, edad, donde vives, apellidos...etc y cuando digamos lo de te llamas .... y apellidas ... y años.... para que no quede todo en pantalla y nos agamos un lio, ponemos cls y cuando llege ahy borrara lo anterior y continuara con el codigo... Benga, les ago el ejemplo...
Cita:
@echo off
title ejemplo4
set/p nombre= ¿como te llamas?
echo.
pause
echo.
set/p edad= ¿y cuantos años tienes?
echo.
pause
echo.
set/p vive= ¿y donde vives?
echo.
pause
cls
echo te llamas %nombre% y tienes %edad% años y vives en %vive%
echo.
pause > nul
exit

han visto no?? si no hacen los codigos, por lo menos les aconsego que lo agan con los mios, den a copiar y pegar para que les sirva de ejemplo. Vallan provando, es la mejor forma de acordarte de ello y coger soltura

Y bueno, si se an quedado con esto... por oy ya es bastante...

Ah!! una ultima cosa.. les voy a dar ya los codigos de colores para que experimenten a cambiar el color a la ventana del programa. Es facil de usar, deven poner, color seguido de un numero y letra (color de letras y de fondo)... prueven....

CODIGO DE COLORES:

0 = Negro
1 = Azul
2 = Verde
3 = Aguamarina
4 = Rojo
5 = Púrpura
6 = Amarillo
7 = Blanco
8 = Gris
9 = Azul claro
A = Verde claro
B = Aguamarina claro
C = Rojo claro
D = Púrpura claro
E = Amarillo claro
F = Blanco brillante

Os dejo un ejemplo del anterior, ejmplo3, para que vean como se meten los colores
Cita:
@echo off
title ejemplo4
color 5e
set/p nombre= ¿como te llamas?
echo.
pause
echo.
set/p edad= ¿y cuantos años tienes?
echo.
pause
echo.
set/p vive= ¿y donde vives?
echo.
pause
cls
color 2f
echo te llamas %nombre% y tienes %edad% años y vives en %vive%
echo.
pause > nul
exit


Espero que asta aqui lo hallan entendido, si necesitan alguna aclaracion o no entienden algo. No duden en postear.

Continuaremos el proximo dia. Un saludo. TxShack

CAPITULO 3: VARIABLES -CONTINUACION

En esta ocasion, os explicare otro tipo de variables, que se utilizan para hacer operaciones matematicas. Su base y modo de empleo es similar a las del capitulo anterior (las set/p).

Estas en vez de set/p xxx= se llaman set/a xxx=
Sirve por ejemplo para realizar medias, porcentajes...etc...

Lo mejor es ver un ejemplo:

Por arece en el 1º capitulo, y se usa para acer aclaraciones a la hora de acer el codigo, pero q luego en el programa no se vera. Os lo digo porque lo utilizare para irles explicando.

VEAN:
Cita:
@echo off
title calcula tus notas medias con txshack
color 0c
rem como veran este color establece las letras rojas y el fondo negro
echo.
set/p a=¿cual es tu nota en matematicas?
cls
set/p b=¿cual es tu nota en tecnologia?
cls
set/p c=¿cual es tu nota en lengua?
cls
set/p d= ¿cual es tu nota en ingles?
cls
set/p e=¿cual es tu nota en sociales?
cls
set/p f=¿cual es tu nota en dibujo?
rem esto lo comprenden no? e establecido notas a una serie de variables q ya conocen del capitulo anterior
cls
set asig=6
rem esto tambien deven de saberlo ya...asi lo que acemos es dotar la palabra asig con el valor 6
set/a suma=a+b+c+d+e+f
rem aqui sumamos las medias
set/a media=%suma%/%asig%
rem como veran al dividir la suma entre las asignaturas sacamos la media
echo tu nota media es de : %media%
pause
echo estudia mas cabron
echo.
echo consejo de txshack
pause
exit
.
Se me olvidaba decir que no muestra decimales, es decir si tu media es de 5,25 veras 5... ¿¡que qereis!? jeje

Espero que lo ayais entendido.

Los comandos de las operaciones son

suma+
resta -
producto *
division /
exponente ^

HASTA EL PROXIMO DIA!! CAPITULO 4: IF, GOTO, MENUS

Bueno, en este 4º capitulo, os explicare 2 sencillos comandos (el goto, y el de la estructuracion por menus), y otro algo mas complicado (el if) pero vereis que con un poco de
practica tambien esta chupado.

El comando goto, nos permite dar un salto a un determinado lugar del bat. Por ejemplo para ir a un menu...

Los menus, nos permiten hacer "menus" o apartados en nuestro bat.

Los menus se hacen escriviendo : y seguido el nombre del menu. (con el ejemplo de luego lo vereis mas claro)

El comando if sirve para establecer una condicion, es decir, si la condicion se cumple o no, se ara tal cosa.

El comando if, dispone de los siguientes atributos:

variable==valor (para expresar si la variable es igual a valor az esto)
variable LSS valor (para expresar si la variable es menor a valor az esto)
variable GTR valor (para expresar si la variable es mayor a valor az esto)
variable LEQ valor (para expresar si la variablees menor o igual az esto)
variable GEQ valor (para expresar si la variable es mayor o igual az esto)

Para ver mas claro esto del goto, el if, y lo de los menus, os pondre un simple ejemplo.
Cita:
@echo off
title txshack if, goto y menus
:menu
cls
echo responde si o no
echo.
set /p var=quieres convertirte en hacker??
If %var%==si goto serh
If %var%==no goto noh
:serh
cls
echo pues entonces sigue los consejos de txshack
pause > nul
goto end
:noh
cls
echo.
echo pues entonces que coño aces leyendo esto??
pause > nul
goto end
:end
cls
echo.
echo adios
pause
exit


Han comprendido no?? es sencillo.

Aqui os dejo otro ejemplo
Cita:
@echo off
title ¿que numero sera...?
:menu
cls
echo deves averiguar el numero para poder salir
echo.
set /p var=pon un numero:
If %var%==5 goto si
If %var% LSS 5 goto menor
If %Var% GTR 5 goto mayor
:si
cls
echo correcto!!! por culo te la inco!! jaja
pause
goto salir
:menor
cls
echo elije otro mas alto
echo.
echo sigue jugando
pause > nul
goto menu
:mayor
echo elije otro mar pekeño!!
echo.
echo sigue probando
pause > nul
goto menu
:salir
echo.
echo asta otro dia!!
pause > nul
echo.
echo un saludo, txshack
pause
exit


Ya lo abran pillado no??

Tambien pueden usar el comando if not que hace lo contrario que el if. En vez de decir SI pasa esto....haz esto, lo que hace es decir, SI NO pasa esto...haz esto. ¿Entienden no??? sino agan un ejemplo veran q facil es.

Se preguntaran tambien que pasa, cuando por ejemplo en el 1º ejemplo que puse, en vez de escrivir si o no, escribimos otra cosa, entonces lo que sucedera, es que el lenguage, al ser lineal, pasra a la siguiente linea... sin importar lo q pongamos (pruevenlo).

Pero no se preocupen todo esto tiene solucion con un comando llamado else.

Lo que qiere decir es sino haz esto, es decir, por ejemplo decimos
Cita:
if %vari%=1 (goto menu1) else goto menu2


Lo que qiere decir esto, es que si la variable es 1, vallamos al menu1, sino, al menu 2.
La sintaxis seria esta

if condiciones (accion1) ELSE accion2

La 1º accion deve ir entre parentesis obligatoriamente.

Vean un ejemplo les quedara mas claro...
En el ejemplo se trata de decir si quieres un CONSEJO o si quieres SALIR, si escrives cualqier otra cosa, veran que vuelve al principio, y no pasa como en los ejemplos de antes
Cita:
@echo off
title txshack di soy bobo
:menu
cls
echo que quieres? consejo o salir
echo.
set /p var=dime, consejo o salir:
If %var%==consejo (goto consejo) else goto if2
:if2
if %var%==salir (goto end) else goto menu
:consejo
cls
echo ten cuidado con lo que descargas, fiate solo de txshack, el es legal!!
pause > nul
goto end
:end
cls
echo.
echo adios!!
pause
exit


Bueno, y con todo esto acabo por hoy. Creo que son bastantes cosas por hoy no creen??

Pronto seguire.

Un saludo; TxShack


El tutorial tiene imagenes, no pude meterlas , luego seguire con el turoial ya que el tutorial de txshack sigue pero no sigo por hoy
0
0
0
6
0No comments yet