[Tutorial] Aprende a programar en bat!!!

Tema en 'Guías y Tutoriales' iniciado por Poto, 6 May 2011.

  1. Pot

    Poto
    Expand Collapse
    Coronel
    Usuario destacado

    Mensajes:
    3.356
    Me Gusta recibidos:
    435
    ps vi un tuto muy interesante

    Tutorial: Aprende a programar en Bat

    Creditos: HunterxD007

    Comenzemos.

    Bat es un tipo de programacion plano que se codifica con ASCII, es decir, con la escritura de nosotros se puede realizar un bat.

    Primero que nada, debemos conocer el comando primordial, llamado echo.

    Echo es el comando que da ordenes y da cosas por escrito.

    Para que el bat no sea tan dificil de comprender, vale la pena que para comenzar a programar, usemos el comando echo

    Ahora, para comenzar vamos a crear un comando para que nos salga una pantalla diciendo "Hola".

    El codigo que se escribe en el block de notas es este:

    Citar:
    @echo off
    echo hola
    pause
    exit
    Ahora, vamos a explicarlo

    Citar:
    @echo off
    Este es el comando que indica que no aparescan las acciones sino el resultado de las mismas.
    Citar:
    echo hola
    Este comando significa:
    Citar:
    echo
    Ese comando indica que lo proximo a escribir se mostrara en la consola.
    Citar:
    hola
    Esto significa que se dira "Hola"
    Citar:
    pause
    Este comando pausa la consola, hasta que demos a alguna tecla no continuara.
    Citar:
    exit
    Significa que al presionar una tecla, se cerrara la consola.

    Ahora que ya saben que significa @echo, echo, pause y exit, vamos a conocer comandos de este archivo:

    Citar:
    @echo off
    echo Cuando presiones una tecla
    echo La pantalla se borrara
    echo Y se escribira algo
    pause
    cls
    echo ¿Ves?
    pause
    Ya conocen @echo, echo y pause, el que no conocen es CLS

    CLS es un comando que limpia la consola.

    Comandos:

    CD: Ubica el batch en un lugar (ejm: CD "C:\Archivos de programa")

    If not exist "x" goto "x": Si no existe el archivo X ve al orden de acciones x.

    Ejemplo:
    Un bat que reemplaza el archivo "x" en Archivos de programa por el archivo "c" en archivos de programa\hot.

    Citar:
    @echo off
    cd "C:\Archivos de programa\"
    if not exist "x" goto error
    if exist "x" goto re

    :error

    echo Error en el reemplazo.
    pause
    cls

    :re
    copy x "C:\Archivos de programa\Hot\c"
    pause
    exit
    Ahora analizemos lo que no han aprendido en ese bat:

    :error y/o :re :

    Especifica un bat con varios comandos y/o funciones.

    copy x
    "C:\Archivos de programa\Hot\c":

    Copia el archivo "X" y lo manda a
    C:\Archivos de programa\Hot y lo renombra a c.

    if exist "x" goto re:

    Significa que si existe el archivo "x" se ira a la linea de comandos "re".

    Ahora, Veamos las variables.

    Las variables son cosas/objetos que se establecen en el transcurso del bat.

    El comando para establecer una variable es set:

    Citar:
    @echo off
    set jo= Hola
    echo %jo%
    set jo= hola:

    Significa que el variable "jo" ahora tendra como resultado "hola"

    echo %jo%:

    Significa que saldra un mensaje diciendo el variable.

    Ahora, comenzemos a usar el comando "if" que acompaña a una variable.

    Un archivo que si dices "hola" te mandara a la linea de comandos hola, y si dices adios te envia a adios.
    Citar:


    Citar:
    @echo off
    echo Hola o Adios?
    pause
    set /p
    adho= Di hola o adios
    if
    %adho% == hola goto hola
    if %
    adho% == adios goto adios

    :hola

    echo Hola!
    pause
    exit

    :adios

    echo Adios!
    pause
    exit



    Ahora analizemoslo:

    set /p adho= (/p):

    Significa que le pedira al usuario que especifique la descripcion de la variable adho.

    if %
    adho% == hola goto hola
    if %adho% == adios goto adios:

    Significa que si se detecta que el variable "adho" es hola o adios, le enviara a la linea de comandos hola o adios.

    Ahora, y para terminar con algo dificil, creemos una calculadora que sume y reste.

    El codigo es este:

    Code:
    @echo off
    echo Calculadora de Sumas y Restas
    echo Programado por Hunter
    pause
    goto comand

    :comand
    echo Que desea hacer?
    echo Sumar o restar?
    set /p sor= Sumar o Restar
    if %sor% == sumar goto sumar
    if %sor% == restar goto restar

    :sumar
    set /p n1= Numero 1 a sumar
    set /p n2= Numero 2 a sumar
    set /a suma= %n1% + %n2%
    echo Resultado: %suma%
    pause
    goto credits

    :restar
    set /p n1= Numero 1 a restar
    set /p n2= Numero 2 a restar
    set /a resta= %n1% - %n2%
    echo Resultado: %resta%
    pause
    goto credits

    :credits
    echo Volver a empezar?
    set /p rem=Si o no?
    if %rem% == si goto command
    if %rem% == no goto creedit

    :creedit
    echo Programado por Hunter.
    pause
    exit
    Lo unico que tengo que explicar es esto:

    set /a:

    Significa que la proxima variable tiene un valor numerico.

    Crear un bat que crea otro bat

    Codigo:

    Code:
    @echo off
    echo Creador de otro bat
    echo Espera.
    pause>nul
    echo @echo off>>otrobat.bat
    echo echo Otro bat by Hunter>>otrobat.bat
    echo pause>>otrobat.bat
    echo cls>>otrobat.bat
    echo echo Holaaa>>otrobat.bat
    echo set /p param= Tu nombre? >>otrobat.bat
    echo echo mucho gusto %param%>>otrobat.bat
    echo pause>>otrobat.bat
    pause
    echo Bat creado.
    start otrobat.bat
    pause
    echo Adios, By Hunter
    pause
    exit
    Va asi para que se cree otro archivo:

    echo comandoausar>>nombredelbat.bat

    el comando Start significa que se abrira "x" archivo.

    Lastima que con eso, los variables no funcionan T_T

    Ufff que lala hacer un tuto de bat -_-

    Añadido:

    Codigo fuente de un reemplazador que pide al usuario que especifique ubicacion del archivo y nombre del mismo.


    Code:
    @echo off
    echo Reemplazador de archivos
    echo By Hunter
    pause
    echo Escribe el lugar donde tienes el archivo
    set /p place=
    echo El nombre del archivo
    set /p name=
    echo El lugar del archivo nuevo
    set /p place2=
    echo El nombre del archivo nuevo
    set /p name2=
    pause
    echo Escribe R cuando quieras reemplazar
    set /p r=
    if %r% == r goto reem

    :reem
    echo Reemplazando...
    cd "%place%"
    copy "%name%" "%place2%%name2%"
    pause
    goto credits

    :error

    echo Error, no escribiste R.
    echo Pulsa cualquier tecla para continuar
    pause>nul

    :credits
    echo By xxxx

    echo Programado por Hunter

    ps me diran para que sirve este programa sirve para aser calculadoras y otros tipos de programas informatica simple http://todd.fries.net/pub/msdos-2.jpg
     
  2. Old

    Old Jewel
    Expand Collapse
    Cabo

    Mensajes:
    128
    Me Gusta recibidos:
    1
    Se nota qué hiciste solo un Copy paste.

    Fijense en los Spoliers :S
     
  3. Pot

    Poto
    Expand Collapse
    Coronel
    Usuario destacado

    Mensajes:
    3.356
    Me Gusta recibidos:
    435
    tienes razon pero para mi esto es muy interesante hace unos años que no veia tan buena explicacion
     
  4. Mob

    Mobius
    Expand Collapse
    Moderador

    Mensajes:
    985
    Me Gusta recibidos:
    25
    muy bueno para joder a mis amigos
     

Compartir esta página