Curso batch

CURSO BATCH

Bueno, puse una encuesta para ver si ponía unos tutoriales batch y ganó la opción de que sí. Bueno pues en este topic pondré los tutoriales.

Capítulo 1 - Lo básico

Bueno, empezemos por lo más básico, lo único que necesitamos para programas batch es el bloc de notas y saber algo de batch, claro... :roll: .
(No usar word ni wordpad para programar batch, no son editores de texto plano).
Por regla general los batch suelen empezar por "@echo off" (sin comillas).
Esa línea es para evitar que salgan los comandos, solo el resultado (os puede sonar a chino pero luego lo entendereis)
Empezemos con los comandos básicos que son echo, pause y exit.
Empezemos con el echo, echo escribe algo en pantalla.
Pause hace una pausa al programa y exit sale del programa.
Bueno algo simple sería:
@echo off
echo Hola, Mundo!
pause
exit
Copiar eso en el bloc de notas y guardarlo como curso.bat y abridlo, bueno vamos a analizar un poco el código.
La primera línea es @echo off por lo que dijimos antes, si quereis probad el mismo código sin @echo off y vereis la diferencia.
La segunda línea es echo Hola, Mundo!, eso lo que hace es escribir Hola, Mundo! en pantalla, luego hemos puesto pause que es para pausar el programa, tambien escribe en pantalla "Pulsa una tecla para continuar...", bueno sin pause el programa se cerraría y no daría tiempo a leer hola mundo, y luego exit sale del programa...
Bueno mañana continuaré el curso...
Mientras tanto postear buestras dudas.
yupi yupi, vuelven los cursos a CCTW.

aunque ya no son sobre paginas webs jaja

Suerte con tu curso Maestro

(te digo maestro o sensei??)
losmejoresjuegos escribió:Yo tengo una duda: ¿Qué es batch? Juro que no tengo ni idea :S

Bueno, batch es un lenguaje de programación que puede ser interpretado por cualquier windows en un archivo .bat o .cmd, prueba ha hacer lo que pone en el curso y sabras batch!.
Con cuanta frecuencia van a sacar estos manuales? Esque el primero es demasiado sencillo XD. Ademas este lo teias puesto en tu Web jeje asique ya lo hice.

Saludos
Capítulo 1 - Lo básico (continuación)
Bueno, sigamos el curso...
Lo primero que voy a decir es una cosa que puede resultar útil, si al pause le añadimos > nul (pause > nul) se quitaría lo de pulsa una tecla para continuar, pero seguiría teniendo el mismo efecto.
Bueno una vez esplicado esto voy a explicar más comandos básicos:
rem: Este comando sirve para escribir comentarios en los archivos batch (como los en html)
Ejemplo:
rem Holaaaa, esto es un cometario pero no comenta mucho la verdad :D
Cls: Borra la pantalla, luego lo entendereis
Ejemplo:
@echo off
echo Hola
pause > nul
cls
echo Adios
pause > nul
exit
(probad a quitar el cls y vereis la diferencia)
Goto: Sirve para ir a una etiqueta en el batch, las etiquetas empiezan por :, ejemplo:
:menu
Y luego goto hace que se dirija a la etiqueta:
goto menu
Aquí no se ponen los :, solo se ponen los : para definir una etiqueta, luego lo entendereis mejor

Ejemplo de un batch con todo esto:
@echo off
rem Lo de arriba ya sabeis de que va
:inicio
rem Con esto he definido una etiqueta
echo Hola
rem Bueno, echo hola no hará falta que os lo explique no?, ya está en la primera parte del curso lo que hace...
pause > nul
rem Al pause le pongo el > nul para que no salga lo de pulse una tecla para continuar
cls
rem Borra la pantalla, provad a quitarlo y vereis la diferencia
echo Pepe esta en la granja
rem Sin comentarios, se sabe de sobra lo que hace
pause > nul
rem .........................Bueno...............................
goto parte2
echo Jo tan insignificante soy que me saltas
rem Bueno esto no se escribiría ya que hemos puesto goto parte2 y se iria a :parte2 que esta debajo de esto, por lo tanto esto como si no existiera
:parte2
cls
rem Borramos pantalla...
echo Blablabla
pause > nul
exit
Bueno guardarlo como algo.bat y abridlo, lo he explicado todo con los comentarios.
Hasta la próxima.
Si teneis dudas tanto de esa como de la anterior parte posteadlas.
HASTA EL PRÓXIMO CAPÍTULO QUE ENSEÑARÉ LAS VARIABLES.
nekako escribió:muy bueno maestro html, aunq desde aora te llamare sensei batch :D

Pues llámame sensei batch si quieres, nakako... 8) 8) 8)
Esto ya me gusta mas, mucho mas jeje. Aunque sigue siendo bastante facil o a mi me lo parece. :lol: Estoy impaciente por el siguiente tutorial jeje que las variables ya complican las cosas bastante(por lo menos si es igual que las de C)aunque no mucho.

Tengo una pregunta...¿Con esto se podrian hacer parches para juegos?¿esto luego se puede encriptar? esque si lo publicas al final too el mundo ... te ha copiao el codigo :shock:

Saludos y gracias por los tutoriales :wink:
Capítulo 2 - Las Variables
ATENCIÓN: Realiza antes el alterior capítulo si no lo has hecho antes de empezar con otro capítulo.

Bueno voy a explicar las variables, para definir una variable pondemos poner:
set nombredelavariable=contenidodelavariable
Luego llamar una variable tenemos que escribir:
%nombredelavariable%
Y para escribirla:
echo %nombredelavariable%
Importante: Hay que poner los % al principio y al final del nombre de la variable.
Ejemplo:
@echo off
set mivariable=hola
echo %mivariable%
pause > nul
exit
Bueno, esto es simple...
Ahora vamos a hacer que el usuario escriba la variable:
Se pondría igual pero poniendole el modificador /p.
Ejemplo:
set /p variable=Escribe algo: 
Lo de escribe algo no influye en la variable, es un texto que aparecerá como orientación de que tiene que escribir.
Cuando se pone un set /p no hace falta poner debajo un pause, ya que se pausa hasta que el usuario escriba algo y pulse enter.
Ejemplo:
@echo off
set /p escrito=Escribe algo:
cls
echo Escribiste %escrito%
pause > nul
exit
No os equivoqueis con poner por ejemplo:
set escrito=Escribe algo: 
Y:
ser /p escrito=Escribe algo: 
Ya que con lo primero se definiría la variable con Escribe algo:
Y lo segundo definiría la variable con lo que ponga el usuario.
Como siempre postead vuestras dudas.
Aviso: De las variables habrá una segunda parte
buen tutorial si lo ves que necesitas ayuda dimelo que yo tambien entiendo algo de batch(hasta reiniciar y formatear pcs llego)
Ha por cierto, tambien se puede ser informacion sobre comandos si vais a ejecutar,escribis "cmd" sin comillas y despues escribis HELP, de todos los comando que hay da una pequeña explicacion, para mas informacion pones por ejemplo para informacion del set:
set/? y te da toda la informacion sobre el
kaotick escribió:Ha por cierto, tambien se puede ser informacion sobre comandos si vais a ejecutar,escribis "cmd" sin comillas y despues escribis HELP, de todos los comando que hay da una pequeña explicacion, para mas informacion pones por ejemplo para informacion del set:
set/? y te da toda la informacion sobre el

Ya, pero ahí lo explica un poco rebuscado para la gente que no sabe batch, por eso no explico eso.
Capítulo 2 - Variables (continuación)
Ahora aprenderemos a sumar, restar, multiplicar y dividir en batch...
Para eso se hace con el set /a
Ejemplo:
@echo off
set /a suma=4+10
echo %suma%
pause > nul
exit

Bueno, algo más práctico sería:

@echo off
set /p p=Primer operador:
cls
set /p s=Segundo operador: 
cls
set /a r=p+s
echo El resultado es %r%
pause > nul
exit

Os habeis dado cuenta de que he puesto:

set /a r=p+s

Es decir, he sumado las dos variables sin poner %, eso se debe a que el modificador /a solo permite hacer operaciones se pueden poner las variables sin los %.

Bueno ejemplo:
@echo off
set /p uno=Dime un numero: 
cls
set /p dos=Dime otro: 
cls
set /p tres=Otro mas:
cls
set /p cuatro=El ultimo: 
set /a media=uno+dos+tres+cuatro
set /a resultado=media/4
cls
echo La media es %resultado%
pause > nul
exit

Bueno, ahora haced algunos programas en batch con todo lo que os he enseñado hasta ahora y si tienen algún fallo os lo corregiré.

Bueno, cuando hayais posteado unos cuantos programas pasaremos a el if y else.
Excelente tutorial, aún estoy recién empezándolo, me parece un poco raro O.o Es k esto de nuevos lenguajes y cosas de estas... pero me a ayudado muxo. ARIGATOU Maestro HTML ^_^
bueno aqui va un ejemplo que usa variables y bucles, pero no se cierra solo, phay que darle a la X.Este ejercicio puede usarse de ejemplo, se trta de un programa que saca el cuadrado y el cubo de un numero.
@echo off
title Cuadrados y Cubos de un numero.
color 1F
:inicio
echo Ingrese un valor.
set /p operacion=
goto operar
:operar
cls
set /a cuadrao=%operacion% * %operacion%
set /a cubo=%operacion% * %operacion% * %operacion%
echo.
echo El cuadrado de %operacion% es %cuadrao% y su cubo %cubo%
pause > nul
cls
goto :inicio
Podeis usarlo para guiaros
muy bien :D

pero recuerda maestro html no postees la parte destructiva de este lenguaje :D
y asi todos seremos felices :wink:
Torex escribió:muy bien :D

pero recuerda maestro html no postees la parte destructiva de este lenguaje :D
y asi todos seremos felices :wink:

Nunca ha sido mi intención postearla.
la verda esque sin la parte destructiva es un poco dificil explicar todas las funciones.Aunq antes del if y else yo creo que podrias explicar lo de mover, copiar y borrar(move,copy y del).
muy bien me gusta este tutorial no has pensado poner en tu web un tutorial de los banch
Yo haria un programa en batch, pero el problema esque no tengo ideas suficientex XD y con estos conocimientos menos, las cosas que se me ocurren necesitas ifo else y alguns cosas mas jje. Asiuque no se me ocurre nada de nada.
Sorry

Saludos