INRODUCCION:
Este curso es para nos novatos que no saben programar, intentare explicarlo todo lo mas claro y preciso que pueda. Si has programado alguna vez no te molestes en seguir leyendo, no aprenderas nada nuevo ni de relativa importancia. Recomiendo que vayas haciendo los ejercicios o pasos mientras seguimos el curso.
Los único requisitos son: el Bloc de notas, paciencia y muy importante: sabes 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… Venga, 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, ejmplo3, 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
CAPITULO 3: LAS VARIABLES (Continuación)
En esta ocasión, os 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. Os 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!? xD
Espero que lo hayan entendido.
Los comandos de las operaciones son
suma+
resta -
producto *
división /
exponente ^
CAPITULO4: If, Goto y 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 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 Comando (Ciudado - Importante)
ATENCIÓN: DESTACO ESTE CAPITULO POR QUE ES EL MAS IMPORTANTE Y UN MAL USO DE EL PUEDE JODERTE/LES EL ORDENADO ASIN QUE CUIDADO Y NO ME HAGO RESPONSABLE.
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, nos meteremos con la creación de virus, e 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
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.
0 comentarios:
Publicar un comentario