InicioInfoCurso de Batch para principiantes

Curso de Batch para principiantes

Info5/16/2011


Curso de Batch para principiantes






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 aprenderán nada nuevo puesto que como ya e dicho, es para aprender.
Les recomiendo hacer los ejercicios ustedes mismos a la vez que siguen el curso para que puedan aprender bien.
Los únicos requisitos son; el bloc de notas, paciencia e intentar entender lo que se hace



CAPITULO UNO: MI PRIMER PROGRAMA .BAT

En este primer capítulo crearemos nuestro primer programa, usando los comandos mas básicos de la programación en Batch.
Abran el bloc de notas.
A continuación escriban

@echo off

Así será como empecemos siempre el programa
A continuación escribiremos es titulo del programa, para ello pondremos title seguido de su titulo, ejemplo:

@echo off
title mi primer programa “lo que se te ocurra”

De esta forma nuestro programa tendrá el nombre de, “mi primer programa “lo que se te ocurra”"

Ahora les mostrare una serie de comandos básicos que deben de aprender, les aconsejo que lo apunten en un papel para tenerlos siempre presentes.

echo. sirve para dejar un espacio de línea 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 edición, osea donde estamos ahora, en el bloc de notas..(suele escribirse para hacer tus aclaraciones, y que no te parezca lioso, por ejemplo decir, asta aquí la introducción, asta aquí las preguntas, apartir de aquí iré acabando las operaciones…etc)
pause sirve para hacer una pausa en el programa, es decir, una vez llegados ahí, nos dirá el programa… pulse una tecla para continuar… en cambio si escribimos 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..

@echo off
title mi primer programa “lo que se te ocurra”
echo.
echo comentario
echo.
pause
echo.
echo este es mi primer programa jejeje siiiiii
pause > nul
rem y acá ya se acaba, esto no lo leeré pero me sirve de aclaración
exit


Ahora le dan a guardar como y lo llaman por ejemplo 1ºprogramaciones.bat o lo que quieran, pero debe ser loquesea.bat
Ahora verán 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!!
Después intenten entender el código, y verán lo sencillo que es…


CAPITULO 2: LAS VARIABLES


Espero que les quedase claro lo que dimos en el capítulo numero 1. 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 hacerlo referencia mas adelante. Para entenderlo, lo mejor es que hagamos un ejemplo.

@echo off
title ejemplos
set var=capullo
echo eres un %var%
pause


Como verán comenzamos con @echo off y seguimos poniendo un titulo, en este caso lo he llamado ejemplos. (asta aquí ya lo sabían no??)
a continuación al poner set var=capullo hace 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? así pueden hacer todo lo que se les ocurra…lo q deben recordar es que tiene que empezar por set unapalabra= loquequieras y para hacer luego referencia a loquequieras, meten entre %% la palabra seguida de set, de esta forma %unapalabra%
por ser un lió , ponemos cls y cuando llegue ahí borrara lo anterior y continuara con el código… les hago el ejemplo…

@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 códigos, por lo menos les aconsejo que lo hagan con los míos, den a copiar y pegar para que les sirva de ejemplo. Vallan probando, es la mejor forma de acordarte de ello y tomar confianza
Y bueno, si se han quedado con esto… por hoy ya es bastante…
Ah!! una ultima cosa.. les voy a dar ya los códigos de colores para que experimenten a cambiar el color a la ventana del programa. Es fácil de usar, deben 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

Les dejo un ejemplo del anterior, ejemplo3, para que vean como se meten los colores

@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 aquí lo hallan entendido, si necesitan alguna aclaración o no entienden algo. No duden en preguntar.


CAPITULO 3: VARIABLES - CONTINUACION

En esta ocasión, les explicare otro tipo de variables, que se utilizan para hacer operaciones matemáticas. Su base y modo de empleo es similar a las del capítulo 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 cierto, antes de mostrar el código, recuerdan el comando rem no? aparece en el 1º capítulo, y se usa para hacer aclaraciones a la hora de hacer el código, pero q luego en el programa no se vera. Lo digo porque lo utilizare para ir explicando.
VEAN:

@echo off
title calcula tus nota lo que hacemos es dotar la palabra asig con el valor 6
set/a suma=a+b+c+d+e+f
rem aquí sumamos las medias
set/a media=%suma%/%asig%
rem como verán al dividir la suma entre las asignaturas sacamos la media
echo tu nota media es de : %media%
pause
echo estudia mas crabrón
echo.
echo consejo de Moglu!!
pause
exit


Se me olvidaba decir que no muestra decimales, es decir si tu media es de 5,25 veras 5… ¿¡Algo es algo no no pidan mas!? jeje
Espero que lo hayan entendido.
Los comandos de las operaciones son
suma+
resta -
producto *
división /
exponente ^


CAPITULO 4: IF, GOTO, MENUS

Bueno, en este 4º capítulo, les explicare 2 sencillos comandos (el goto, y el de la estructuración por menús), y otro algo mas complicado (el if) pero verán que con un poco de practica también esta fácil.

El comando goto, nos permite dar un salto a un determinado lugar del bat. Por ejemplo para ir a un menú…
Los menús, nos permiten hacer “menús” o apartados en nuestro bat.

Los menús se hacen escribiendo : y seguido el nombre del menú. (con el ejemplo de luego lo verán mas claro)
El comando if sirve para establecer una condición, es decir, si la condición 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 haz esto)

variable LSS valor (para expresar si la variable es menor a valor haz esto)
variable GTR valor (para expresar si la variable es mayor a valor haz esto)
variable LEQ valor (para expresar si la variables menor o igual haz esto)
variable GEQ valor (para expresar si la variable es mayor o igual haz esto)


Para ver mas claro esto del goto, el if, y lo de los menús, os pondré un simple ejemplo.

@echo off
title Moglu if, goto y menús
:menú
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 que te doy
pause > nul
goto end
:noh
cls
echo.
echo pues entonces que haces leyendo esto??
pause > nul
goto end
:end
cls
echo.
echo adiós
pause
exit


Han comprendido no?? es sencillo.
Aquí les dejo otro ejemplo

@echo off
title ¿que numero será…?
:menú
cls
echo debes 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 el culo te la inco!! jaja
pause
goto salir
:menor
cls
echo elige otro mas alto
echo.
echo sigue jugando
pause > nul
goto menú
:mayor
echo elige otro mar pequeño!!
echo.
echo sigue probando
pause > nul
goto menú
:salir
echo.
echo asta otro día!!
pause > nul
echo.
echo un saludo
pause
exit


Ya lo abran entendido no??
También 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 hagan un ejemplo verán q fácil es.
Se preguntaran también que pasa, cuando por ejemplo en el 1º ejemplo que puse, en vez de escribir si o no, escribimos otra cosa, entonces lo que sucederá, es que el lenguaje, al ser lineal, pasa a la siguiente línea… sin importar lo q pongamos (pruevenlo).
Pero no se preocupen todo esto tiene solución con un comando llamado else.
Lo que quiere decir es sino haz esto, es decir, por ejemplo decimos

if %vari%=1 (goto menu1) else goto menu2

Lo que quiere decir esto, es que si la variable es 1, vallamos al menu1, sino, al menú 2.
La sintaxis seria esta:

if condiciones (accion1) ELSE accion2
La 1º acción Debe ir entre paréntesis obligatoriamente.

Vean un ejemplo les quedara mas claro…
En el ejemplo se trata de decir si quieres un CONSEJO o si quieres SALIR, si escribes cualquier otra cosa, verán que vuelve al principio, y no pasa como en los ejemplos de antes

@echo off
title Moglu di soy bobo
:menú
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 menú
:consejo
cls
echo ten cuidado con lo que descargas, fiate solo de Moglu, el es legal!!
pause > nul
goto end
:end
cls
echo.
echo adiós!!
pause
exit



CAPITULO 5: ULTIMOS COMANDOS

Bien, si han entendido lo anterior, ya es el momento de que sepan el resto de comandos, y experimenten y prueven por ustedes mismos.
En este capítulo, les enseñare el resto de comandos interesantes, y para el próximo capítulo, ya veremos que nos toca, irán surgiendo nuevas cosas y comandos.
Bien, estos son los comandos básicos q deben recordar:

del borra archivos, por ejemplo: del c:/ruta/del/archivo/juego.exe
/P Pide confirmación en cada caso
/F Modo forcé. Borra incluso los archivos de solo lectura
/S Borra también los subdirectorios.
/Q Modo silencioso. No pide confirmación en ningún caso

rd borra el directorio de raid, por ejemplo: rd c:/ruta/directorio/raíz borrara ese directorio
star comienza algo, por ejemplo star www.programasfull.net
taskkill mata un proceso, puede ser también taskkill/f (fuerza bruta) ejemplo: taskkill iexplore.exe
format unidad: formatea una unidad, por ejemplo format c:
msg* hace que aparezca un mensaje en una ventana de windows, por ejemplo; msg* adiós!! y no te olvides de visitar Programasfull!!
reg add añade lo que queramos a la ruta del registro especificada…(ya lo veremos mas adelante)
> y >> son unos redireccionamientos, por ejemplo, si ponemos echo hola>hola.txt se nos creara en el directorio actual, un archivo de texto con el titulo de hola, y que si lo abrimos veremos la palabra hola.
Si por ejemplo ahora creamos otro y escribimos echo adiós>>hola.txt En el archivo que teníamos anteriormente, se seguirá llamando hola, pero al abrirlo veremos que pone hola y en la línea siguiente adiós.
Pero si por el contrario ponemos echo adiós>hola.txt Al abrir el archivo, solo aparecerá la palabra adiós.
Espero que lo hayan entendido… en breves palabras:

> crea o remplaza un archivo
>>salta asta la línea siguiente
ejemplo:

@echo off
echo moglu>hola.txt
exit


Esto nos creara en el directorio actual, un archivo llamado hola.txt y en su interior pondrá moglu

* El * sirve para sustituir a todos los caracteres… por ejemplo si ponemos del *.jpg
borrara todos los archivos con extensión .jpg
del a*.jpg borrara todos los jpg que empiece por a sea cual sea su continuación.

? El ? es parecido al anterior, solo que sustituye a un solo carácter, por ejemplo si ponemos del c?sa.jpg borrara todos los archivos .jpg que comienza por c (un carácter cualquiera) sa, por ejemplo borraría; casa.jpg cosa.jpg cesa.jpg cssa.jpg…. entienden no?

El * y ? sirve tanto para el nombre como la extensión…. No voy a liarme mucho en esto, porque es algo fácil y seguro que lo entienden. Les pondré algún ejemplo que seguro q entienden.
c?sa.* (archivos c -un carácter- sa y de cualquier extensión)
*asa*.b* ( -cualquier cosa- asa -cualquier cosa- y extensión b + lo que sea)

CHDIR o CD [path>
Cambia al directorio indicado.
CD ”c:archivos de programa” Trasladarse al directorio Archivos de programa
CD .. Trasladarse al directorio superior
CD Trasladarse al raíz

ATTRIB [/S> [archivo>

Muestra los atributos de los archivos indicados y en su caso permite cambiarlos.
Con el parámetro /S busca también en subdirectorios.
Los atributos son:
H -> oculto. Se activa con +h y desactiva con -h
R -> Lectura. Solo lectura con +r, normal con -r
S -> Sistema. Se activa con +s y desactiva con -s
A -> Modificado. Para copias de seguridad increméntales. +a indica modificado y -a indica no modificado.
ATTRIB archivo.txt Muestra los atributos de ese archivo
ATTRIB -r archivo.txt Pone el atributo solo lectura a archivo.txt

Attrib miarchivo.txt (mostrar los atributos de miarchivo.txt)
attrib *.exe +r +r +s (pone a todos los archivos con extensión exe como ocultos, del sistema y read only)

shutdown este comando, depende de las letras que lo acompañen, puede hacer una cosa u otra:
si esta seguido de -r se reiniciara el equipo
-s hará que se apague
-f forzara a cerrarse todos programas
-t 15 indica el tiempo…en este caso 15 segundos
-c ” ” lo que va entre comillas será un mensaje…
pongamos un ejemplo:

shutdown -r -f -t 12 -c “jodete” esto ara q la pc se reinicie (-r) que se cierren todos los programas forzosamente (-f) que lo haga en 12 segundos (-t 12) y salga un mensaje q diga jodete

Estos comandos, junto a los q ya conocen: set/p, pause, pause > nul, cls, exit, echo, if, goto….etc son los básicos.





Espero que les haya gustado, y recuerden que esto no termina aqui. Seguiremos con mas.
Datos archivados del Taringa! original
77puntos
970visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
6visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

x
xm4v3r1ckx🇦🇷
Usuario
Puntos0
Posts29
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.