¿Sabes cómo usar el símbolo del sistema? Si lo haces, puedes escribir un archivo batch. En su forma más simple, un archivo batch (o secuencia de comandos por lotes) es una lista de varios comandos que se ejecutan cuando hace doble clic en el archivo. Los archivos por lotes se remontan hasta el DOS (Disk Operating System), pero siguen funcionando en las versiones modernas de Windows.

Los scripts de PowerShell y Bash pueden ser más potentes, pero los archivos batch pueden ser muy útiles si necesitas ejecutar comandos básicos de Windows.

1. Comandos básicos en Batch

Un archivo batch es simplemente un archivo de texto guardado con la extensión .bat. Puede escribir uno usando el Bloc de notas o un editor de texto más avanzado como Notepad++, pero no use un procesador de textos como Microsoft Word.

A continuación crearemos un archivo batch simple. Primero, abre el Bloc de notas. Escribe las siguientes líneas en él:

ECHO OFF
ECHO Hola Adictec
PAUSE

A continuación, guarda el archivo haciendo clic en Archivo> Guardar. Dale el nombre que quieras, pero reemplaza la extensión de archivo .txt predeterminada por la extensión .bat.

Crear un archivo Batch simple

Creación de un archivo Batch simple

Por ejemplo, es posible que desee nombrarlo hola_adictec.bat.

Ahora tienes un archivo batch con la extensión .bat. Haga doble clic para ejecutarlo. Este archivo batch establece ECHO off  (que limpia la salida ocultando los comandos para que no se impriman en el prompt –> C:\Users\Alex\Desktop>), imprime el texto “Hola Adictec” en la pantalla y espera a que presiones una tecla antes de que finalice.

Si quieres evitar que se muestre el primer comando ECHO off, agrégale un @ al inicio. Así: @echo off

Comando básico de ejemplo Batch

Comandos básicos de ejemplo en Batch

Si no se agrega PAUSE al archivo, el archivo batch simplemente ejecutará los comandos y luego se cerrará automáticamente. En este caso, imprimiría “Hola Adictec” en la ventana y luego cerraría inmediatamente el símbolo del sistema. Cuando desee ejecutar comandos rápidamente sin ver la salida, puede omitirlo. Si estás ejecutando varios comandos, puedes colocar el comando PAUSE entre ellos.

2. Más comandos Batch

Es fundamentalmente sencillo crear un archivo batch. Lo único que necesitas cambiar es lo que escribes en el Bloc de notas. Para ejecutar varios comandos, escribe cada uno por línea y el archivo por lotes o batch ejecutará cada uno en orden.

Por ejemplo, supongamos que queremos escribir un archivo batch que ejecute varios comandos de diagnóstico de red. Es posible que deseemos ejecutar el comando ipconfig/all para ver la información de la red, ping google.com para ver si los servidores de Google están respondiendo, y tracert google.com para seguir las pista de los paquetes hacia google.com y ver si hay algún problema en el camino.

En la forma más básica, podríamos simplemente colocar todos esos comandos en un archivo batch, uno después del otro, así:

ipconfig /all
ping google.com
tracert google.com
PAUSE

Cuando ejecutamos este archivo, simplemente veríamos el resultado de cada comando inmediatamente después del otro. Pero esta no es necesariamente la forma ideal de escribir un archivo batch.

Ejemplo Comandos Batch Avanzados

Ejemplo de comandos batch avanzados

Por ejemplo, es posible que desee agregar líneas de comentarios. Cualquier línea que comience con :: es una línea de comentario y no se ejecutará. Eso los convierte en una forma útil de explicar lo que está sucediendo en el archivo para cualquiera que pueda dárselo, o para ti mismo en un futuro, si olvidas el por qué colocaste un cierto comando allí.

Es posible que también desee agregar el comando “ECHO OFF” al comienzo del archivo. Esto normalmente se agrega al inicio de la mayoría de los archivos batch. Al hacer esto, los comandos mismos no se imprimirán en el símbolo del sistema, pero los resultados sí. Por ejemplo, verá los detalles de la conexión de red pero no la línea “ipconfig /all“. A la mayoría de las personas no les importa ver los comandos, así que esto puede limpiar el resultado.

Así que esto es lo que podría parecer:

:: Este archivo batch comprueba si hay problemas de conexión de red
ECHO OFF
:: Ver detalles de conexión de red
ipconfig /all
:: Comprobar si se puede acceder a Google.com
ping google.com
:: Comprobar la ruta hacía Google.com
tracert google.com
PAUSE
Ejemplo de comandos por lotes en Windows

Ejemplo de comandos por lotes en Windows

3. Personalizar salida de un archivo Batch

Hay otras instrucciones que podrían acompañar a un archivo batch como este. Por ejemplo, es posible que desees que tu script en batch ejecute los comandos anteriores y luego guarde el resultado en un archivo de texto que puedes ver más adelante. Para hacer ello se usa el operador >> después de cada comando, y así agregar la salida al archivo de texto.

Como de todos modos vamos a leer el resultado del archivo de texto, podemos omitir el comando PAUSE.

:: Este archivo batch comprueba si hay problemas de conexión de red
:: y guarda la salida en un archivo TXT.
ECHO OFF
:: Ver detalles de conexión de red
ipconfig /all >> resultados.txt
:: Comprobar si se puede acceder a Google.com
ping google.com >> resultados.txt
:: Comprobar la ruta hacía Google.com
tracert google.com >> resultados.txt

Después de ejecutar el script anterior, encontrará un archivo llamado resultados.txt en la misma carpeta que el archivo batch ejecutado, con el resultado de los comandos. La ventana del símbolo del sistema se cerrará automáticamente una vez que el archivo batch termine de ejecutarse.

Exportar salida de comandos en batch

Exportar salida de comandos en batch

4. Muchos comandos por delante

El ejemplo que estamos usando arriba se basa en la impresión de información en el símbolo del sistema para que el usuario pueda leerla. Sin embargo, muchos archivos por lotes están diseñados para ejecutarse de forma no interactiva. Por ejemplo, podría tener un archivo por lotes que borre múltiples archivos o directorios cada vez que haga doble clic en él. Solo necesitaría usar el comando del para eliminar archivos o el comando deltree para eliminar directorios/carpetas. Recuerde, solo está utilizando los mismos comandos que ejecutaría en una ventana del símbolo del sistema.

Fundamentalmente, ese es el punto de la mayoría de los archivos de proceso por lotes: simplemente ejecutar unos cuantos comandos uno tras otro. Sin embargo, los archivos por lotes en realidad pueden ser mucho más complejos que esto.

Por ejemplo, puedes usar declaraciones “IF” junto con el comando “GOTO” para verificar el valor de algo y luego saltar a diferentes líneas dependiendo del resultado. Esto es más como escribir un pequeño programa real que un script rápido. Esa es una razón por la cual los archivos .bat a veces se denominan “programas por lotes” o “programas batch“.

Si deseas hacer algo más complejo, encontrarás muchas guías para hacer cosas específicas con la programación batch. Por ahora conoces los conceptos básicos de cómo hacer uno simple. ¡Si tienes algún pedido escríbelo en los comentarios, y no olvides de compartir esta publicación! :’)

Cómo escribir un script Batch (.bat) en Windows
5 (100%) 11 votes