sábado, 23 de mayo de 2015

Curso de Programación en Batch, CMD o Terminal de Windows

Hola que tal, bienvenidos sean a este artículo donde se estará abordando el tema de la programación en batch o el procesamiento por lotes, sobre los métodos de utilización del código Batch o como dicen los recien empezados los comandos del Símbolo del sistema.

Pues pasando al tema tengamos en cuenta de que este tipo de sintaxis no es un lenguaje de programación como tal, sino nadamás un interprete de comandos internos del sistema operativo, pasando al tema de la programación o la utilización del tipo de sintaxis veremos algunas diferencias sobre el CMD y MS-DOS.

El MS-DOS que significa Microsoft DOS (Disk Operating System), es el sistema operativo de disco de Microsoft, lo cuál es un desarrollo del Sistema Operativo (DOS) que fué comprado por Microsoft, pasando a llamarse MS-DOS.

El CMD que significa Command, es una consola, terminal o linea de comandos los cuál se trabaja en un código de alto nivel, lo cuál este no exactamente convierte o compila a lenguaje de máquina, aunque todo lo que se escribe en un ordenador es traducido a este lenguaje de bajo nivel.

La diferencia entre CMD y MS-DOS es que CMD no es un sistema operativo, sino otro camino de tener una usabilidad del sistema, de hacer operaciones sin tener que utilizar algo de Windows Form o interfaz gráfica, mientras como había dicho antes, el MS-DOS es un sistema operativo como tal, sí en realidad quisieramos trabajar con una shell en Windows, tenemos como una mejor opción que CMD el PowerShell que es la mera bestia en esto de hacer procesos que normalmente no te da opciones la interfaz gráfica.

Ahora bien, a que viene la pálabra Batch, este es un procesamiento por lotes, por lo cuál se crea un fichero ejecutable en Windows con extensión .bat ('bat'ch). Se toman las priemeras 3 letras del batch. Este mismo código dentro de este fichero .bat funcionan si el formato se le cambia de .bat a .cmd . Estos códigos programados se ejecutan en orden como si fuese un estilo CSS, todos en cascada.

Pero, estos códigos o comandos ejecutados en orden, ¿Para que me pueden servir?, ¿Qué puedo hacer con ellos?.
Estas serian las grandes preguntas para poder empezar a crear un proyecto en batch. Sí eres informático seguro ya has respondido estás preguntas, pero si estás empezando, o eres alguién de proyectos en el sistema de Windows, seguro te toparás en algún momento en la cual tienes que procesar datos de una manera muy rápida.

La primera, ¿Para que me puede servir?.
Muchos tenemos que hacer cosas buenas o cosas malas para parecer buenos y leales ante otros que se la juegan de buenos, lo cuál tienes una tarea, de detectar cuando una USB se inserta en el ordenador, extraer toda su información con mayor velocidad y crear un directorio con dicho nombre del Pendrive y que allí quede almacenada, normalmente una persona sin saber nada de Batch pensaría en introducir el Pendrive y seleccionar todos los ficheros, copiar y luego crear un directorio con el nombre del Pen y pegar la información, luego insertar la siguiente. La verdad es que eso ya es cosa del pasado pero no para ignorantes, considerate ignorante si conoces el sistema, lo sabes utilizar pero aún así utilizas interfaz gráfica y reclamas por más rendimiento. Haciendo un fichero en batch puedes automaticamente crear un evento de recepción donde analice el sistema de dispositivos de almacenamientos masivos y si existe uno nuevo, entonces copiar, crear el directorio y pegar, creeme que el sistema lo hará en segundo plano, más rápido, mayor rendimiento para el ordenador y menos trabajo para tí.
La segunda. ¿Qué puedo hacer con ellos?.
Puedes bajar información por internet, conectarte en un servidor FTP, hacer conexiones a bases de datos, Virus, Malware, Troyanos codificados también en VBS(Visual Basic Script), hacer lecturas de configuraciones de Red, creaciones de redes hospedadas, programación de tareas, etc.

Teniendo en cuenta lo antes descrito, me imagino que has de estar un poco aburrido de tanto leer, por tanto que te daré una introducción en un Video Tutorial donde presento el curso de Programación en Batch al igual que su introducción, estos tutoriales son libres, se encuentran en YouTube, puedes escribir tus dudas tanto por aca que por el mismo canal y compartirlos con tus compañeros.

--------------------------------------------------------------------------------------------------------
Curso de Programación en Batch 1 - Introducción
--------------------------------------------------------------------------------------------------------

Bueno, si han seguido el video, entonces se habrán dado cuenta que explicaba tanto los comandos internos y los externos, dí los comandos que se más se utilizan en los sistemas actuales.

Igualmente, si continuan por el Canal se darán cuenta que hay más de un sólo video donde se habla de Batch, recuerda que este es un curso que aún se está llevando a cabo. Tienes la oportunidad de participar. Te comparto el siguiente video, donde se hace el primer programa en Batch.

--------------------------------------------------------------------------------------------------------
Curso de Programación en Batch 2 - Mi Primer Programa
--------------------------------------------------------------------------------------------------------

He aquí como el primer programa, se realiza utilizando un editor llamado "Sublima Text" versión 3, es necesario utilizar un editor, puede ser de notepad en adelante, para trabajar con diferencias, sencilles y velocidad recomiendo Sublime. Puedes ver como en este video, muestro como imprimir cadenas de caracteres y como jugar con ellas utilizando el comando "echo".

Si recorremos un poco más encontraremos un tercer video sobre como navegar en CMD, o rutas de acceso.
--------------------------------------------------------------------------------------------------------
Curso de Programación en Batch 3 - Rutas de Acceso
--------------------------------------------------------------------------------------------------------
Se está utilizando los comandos del CD, CD .., CD \, CHDIR, CD /?, etc. que es para el desplazamiento entre directorios.

Este es otro bastante importante, que es el de crear directorios o carpetas, donde se estarán utilizando los comandos MD (Make Directory) o MKDIR(Make Directory).
--------------------------------------------------------------------------------------------------------
Curso de Programación en Batch 4 - Directorios o Carpetas
--------------------------------------------------------------------------------------------------------

Como siempre se nos presentan problemas y eso es lo bonito de la vida, que vengan problemas para superarlos y lograr tener una solución a ello. Es aquí donde esta documentación o muchas que se encuentran en por la web no abarcan todo el concepto de un devido comando o ejecutable donde se tenga que establecer un argumento a la función main. Para eso entonces el sistema tiene un comando lamado HELP o /? que es lo mismo, lo único que cambia es el orden de utilización. He aquí el video para que veas como funciona.

--------------------------------------------------------------------------------------------------------
Curso de Programación en Batch 5 - Comando Help y /?
--------------------------------------------------------------------------------------------------------

Ahora es momento de saber utilizar o de ver un árbol de directorios por medio de la consola, lo cuál aquí lo muestra detalladamente.
--------------------------------------------------------------------------------------------------------
Curso de Programación en Batch 6 - Comando Tree
--------------------------------------------------------------------------------------------------------

Luego de la creación viene la destrucción, en algún momento decidimos eliminar algo, como un directorio o un fichero, ahora esto es diferente a la hora de desechar un plastico a un hierro, claro tu dirás que son diferentes materiales, de esta manera entonces lo entiendes bien y sabrás que un fichero no es lo mismo que un directorio o una carpeta. Para poder eliminar carpetas, se hace de este modo.
--------------------------------------------------------------------------------------------------------
Curso de Programación en Batch 7 - Eliminación de directorios o carpetas
--------------------------------------------------------------------------------------------------------

Como he dicho anteriormente, en este video, el capítulo #7 de eliminación no es lo mismo eliminar un directorio a un fichero, las maneras son distintas, son de esta manera.
--------------------------------------------------------------------------------------------------------

Curso de Programación en Batch 8 - Eliminación de ficheros
--------------------------------------------------------------------------------------------------------

Me imagino que esto les ha de parecer interesante, porque como dije antes, todos nos dicen que pensemos y hagamos el bien, sin embargo esto no en su gran mayoría no es así, todo queremos en algún punto o sentido ocacionar algún daño quizás con la excusa de querer repararlo.

Bueno, pues aquí te muestro la primer práctica de como hacer un Malware que te elimina todos los ficheros del sistema.
--------------------------------------------------------------------------------------------------------
Curso de Programación en Batch 9 - Creación del primer Malware
--------------------------------------------------------------------------------------------------------

Para seguir aprendiendo un poco más sobre Batch File, sigue atento a los nuevos videos, un pequeño libro que estoy desarrollando sobre esta tecnología que muchos la creen perdida, pero aún sigue, no frente a los ojos que no saben de ella, sino frente a los suyos que ya están en proceso de aprendizaje.

Hay mucho de que hablar y colaborar sobre este tema, es algo bueno compartir el conocimiento, siempre he dicho que el conocimiento es para el mundo, si alguién tiene la cura del SIDA y lastimosamente es egoísta, creeme que desarrollaremos más ignorancia que inteligencia.

Les invito a que entren al canal de YouTube: Side Master

Te compartiré información en digital, PDF'S, lo cuál los puedes descargar clickeando Aquí

Estaremos al tanto conforme a las actualizaciones que se vayan dando para mantener con vida este blog. Saludos cordiales, esperamos sigas aprendiendo y compartiendo como me imagino lo haces hoy.

Fuente: Side Master.