Crear un archivo batch: así puedes escribir tu propio archivo batch

El cmd.exe, también conocido como símbolo del sistema, es uno de los componentes de software más antiguos de Windows. La herramienta de comandos permite, desde hace décadas, realizar cambios directos en los sistemas operativos Microsoft. Directamente relacionados con el símbolo del sistema están los denominados archivos batch (también archivos bat), que usan comandos propios del sistema para acceder a cmd.exe y poder procesar los comandos de manera apilada. Te revelaremos qué es lo que caracteriza estos útiles scripts,y cómo puedes crear, guardar y ejecutar archivos batch.

¿Qué es un archivo batch o bat?

Un archivo batch (también archivo bat, script bat o archivo de procesamiento apilado) es un archivo de texto que la herramienta de comandos cmd.exe puede ejecutar como procesamiento apilado. En este contexto, el símbolo del sistema adopta tanto el papel del intérprete como de entorno de ejecución. En resumen, se trata de un programa informático o un script cuyos datos o comandos se procesan de manera sucesiva mediante el símbolo del sistema.

Nota

El término “procesamiento apilado” proviene de los inicios del procesamiento de datos, cuando el procesamiento interactivo todavía era imposible. Por aquel entonces, los juegos de datos que había que procesar solían encontrarse en tarjetas perforadas, los soportes de almacenamiento de la época, que se procesaban por pilas (en inglés batch), una tarjeta detrás de la otra. En los sistemas operativos modernos para ordenadores, el término se ha dado a conocer, sobre todo, en relación con la publicación de MS-DOS (1981) y los archivos batch empleados en este contexto.

Con cmd.exe como intérprete y entorno de ejecución, los archivos batch permiten usar y ejecutar comandos CMD convencionales. Además, a la hora de crear archivos batch puedes usar comentarios, marcadores, variables, condiciones y consultas, entre otros. Para que los archivos de texto se dejen convertir en archivos batch, debes agregarles la extensión .bat en sistemas Microsoft más recientes. En Windows NT y OS/2 se solía usar la extensión .cmd.

Hecho

En el año 2006 Microsoft publicó PowerShell, un framework que desde el año 2016 se desarrolla para todas las plataformas y bajo la licencia libre MIT y que también permite la programación y ejecución de archivos de procesamiento apilado. En este contexto, PowerShell ofrece un intérprete de comandos alternativo y un lenguaje de script propio denominado PowerShell Scripting Language.

Crear un batch: tutorial paso a paso

Crear un batch es muy útil si habitualmente lidias con secuencias de comandos que se repiten una y otra vez y deseas automatizar su ejecución. Puede tratarse, por ejemplo, de procesos de inicio de sesión o el inicio de los denominados programas TSR (terminate and stay resident) que quieres que se ejecuten continuamente de fondo. En los próximos párrafos te explicamos qué herramientas necesitarás para crear archivos batch y cómo puedes crear, guardar y ejecutar archivos propios de procesamiento apilado.

Paso 1: elegir e iniciar un editor

Como ya mencionamos previamente, los documentos de texto son una base adecuada para scripts de batch. Para escribir un archivo batch propio, solo necesitarás un editor de textos convencional. Como no necesitarás características tales como destacar elementos sintácticos, el Microsoft Editor (también conocido simplemente como Editor o como Notepad) integrado por defecto en Windows es suficiente. Para abrirlo, solo tienes que teclear el término “Notepad” o “Editor” en la búsqueda de Windows y hacer clic en el icono correspondiente de los resultados de búsqueda:

Paso 2: familiarizarse con comandos batch

Si deseas crear un batch, no tienes que aprender el complejo lenguaje de programación. Pero es imprescindible que tengas conocimientos sobre los comandos de sistema convencionales y sus funcionalidades en archivos batch, por lo que primero debes familiarizarte con algunos comandos antes de ponerte a crear un script propio. Entre los comandos más importantes que debes conocer, queremos destacar los siguientes:

  • ECHO: conecta el texto de salida para comandos ejecutados en la pantalla
  • @ECHO OFF: desconecta el texto de salida para comandos ejecutados en la pantalla
  • START: ejecuta un archivo con la aplicación estándar correspondiente
  • REM: marca una línea de comentario
  • MKDIR/RMDIR: crea o elimina un directorio
  • DEL: elimina archivo(s) seleccionado(s)
  • COPY: copia archivo(s) seleccionado(s)
  • TITLE: edita el título de la ventana CMD
Nota

Puedes consultar una lista más detallada de los comandos más importantes en nuestro amplio artículo dedicado a los “Comandos batch”.

Paso 3: crear y guardar el primer archivo batch

Una primera toma de contacto sencilla en el arte de crear un batch es la elaboración de un script simple que cree varios directorios en un soporte de datos seleccionado en tu sistema. Si por ejemplo, creas un archivo batch con el siguiente input, tras su ejecución en la unidad C: este archivo genera dos directorios denominados “Ejemplo1” y “Ejemplo2”:

MKDIR C:\Ejemplo1
MKDIR C:\Ejemplo2

Simplemente copia ambas líneas a un documento Notepad vacío, tal y como muestra la captura de pantalla.

Para poder guardar esta instrucción bat o el script, haz clic en “Archivo” y selecciona el punto de menú “Guardar como…”. Indica el lugar de almacenamiento y teclea un nombre adecuado para el script, incluida la extensión .bat, en el campo “Nombre de archivo”:

Paso 4: ejecutar el script batch creado

Una vez creado el archivo bat y guardado como tal, tienes dos opciones para ejecutarlo: puedes abrir el script a través del conocido entorno del explorador de Windows o puedes abrir el símbolo del sistema e iniciar el script a través del comando correspondiente.

En este contexto, la primera opción es más sencilla y más apropiada para principiantes, ya que solo tienes que acceder al directorio en el que se encuentra el archivo batch y abrirlo mediante doble clic.

Nota

Si un script batch contiene comandos que requieren derechos de administrador para su ejecución, solo puedes iniciarlos como administrador. En este caso, selecciona el archivo de procesamiento apilado con el botón derecho del ratón y acciona la opción “Ejecutar como administrador”.

No obstante, si deseas abrir el archivo batch a través de un comando, procede de la siguiente manera:

  1. Accede a la función de búsqueda de Windows y teclea “cmd”.
  2. Haz clic con el botón izquierdo en “Símbolo del sistema” para iniciar el comando de manera convencional. Selecciona el comando con el botón derecho y luego haz clic en “Ejecutar como administrador” si se requieren derechos de administrador.
  3. Cambia al directorio en el que se encuentra el archivo mediante el comando “change directory” (cd).
  4. Teclea el nombre del script batch (incluida la extensión de archivo) y acciona la tecla “Introˮ.

Paso 5: editar archivos batch creados a posteriori

Una vez creado un script batch puedes adaptarlo en cualquier momento si, por ejemplo, deseas añadir otros comandos, eliminar comandos existentes o modificar directorios. Para ello, simplemente accede a la carpeta en la que se encuentra el script de comando y selecciónalo con el botón derecho del ratón. A continuación, activa la opción “Editar”.

Ejemplos de scripts batch más complejos y que se pueden usar a menudo

Siguiendo las instrucciones paso a paso anteriores puedes crear archivos batch de todo tipo, independientemente de cuántos comandos de sistema incluyan. En este contexto, la utilidad de un script creado es directamente proporcional a las veces que se puede emplear. A continuación, usaremos dos ejemplos de archivos batch con valor duradero para demostrar las posibilidades del procesamiento apilado mediante la ventana de comandos de Windows.

Script batch con mecanismo simple de copia de seguridad

El siguiente ejemplo ilustra la utilidad de los archivos batch, ya que representa una manera sencilla para realizar copias de seguridad regulares de un directorio cualquiera.

XCOPY C:\Directorio de salida C:\Directorio de copia de seguridad /m /e /y

Cuando creas y ejecutas un archivo batch que contiene la línea representada en la parte superior, lo que estás haciendo es usar el comando “XCOPY” para copiar el contenido de la “carpeta de salida” a la “carpeta de copia de seguridad”; naturalmente debes adaptar correspondientemente los directorios en los que se encuentran las dos carpetas. En este proceso, los tres parámetros tienen la siguiente función:

  • /m: garantiza que solo se copien archivos actualizados para que los archivos que ya se han guardado en copias de seguridad anteriores no se vuelvan a copiar.
  • /e: indica que para la copia de seguridad también se tienen en cuenta todos los subdirectorios incluidos en el directorio indicado.
  • /y: suprime la demanda de confirmación para sobrescribir un archivo de destino existente (en el que se han realizado cambios desde la última copia de seguridad).

Archivo batch con una función de copia de seguridad más compleja

El programa de copia de seguridad explicado anteriormente permite copiar los archivos de salida de la carpeta de salida a la carpeta de destino. También puedes crear archivos batch que hacen que los datos originales se repartan en varias carpetas de destino, y que, por ejemplo, el tipo de archivo sirva como criterio de selección. Para este objetivo necesitas hacer uso del denominado bucle FOR que permite ejecutar un comando varias veces con un argumento variable:

cd C:\Directorio de salida
FOR %%f IN (*.doc *.txt) DO XCOPY C:\Directorio de salida"%%f" C:\Directorio de copia de seguridad\Textos /m /y
FOR %%f IN (*.jpg *.png *.bmp) DO XCOPY C:\Directorio de salida"%%f" C:\Directorio de copia de seguridad\Imágenes /m /y

El código de comandos batch representado provoca que:

  • Todos los archivos del directorio de salida con las extensiones .doc y .txt se copiarán en la carpeta de copia de seguridad “Textos”.
  • Todos los archivos del directorio de salida con las extensiones .jpg, .png y .bmp se copiarán en la carpeta de copia de seguridad “Imágenes”.
  • Solo se copiarán datos actualizados.
  • La solicitud de confirmación se suprimirá siempre.
Nota

El script solo funciona con archivos cuyos nombres cuentan con extensiones definidas, en caso contrario, los documentos correspondientes no se reconocerán en el procesamiento por lotes, aunque tengan el formato adecuado.


¡No te vayas! ¡Tenemos algo para ti!
Consigue tu dominio .es un año gratis.

Introduce el dominio que deseas en la barra de búsqueda para comprobar su disponibilidad.
12 meses desde 0€/año IVA incl.
después 10 €/año IVA incl.