Cómo crear un menú interactivo en un script batch de Windows

Última actualización: 30/04/2025

  • Los menús batch automatizan tareas y simplifican flujos de trabajo en Windows.
  • Se pueden personalizar y adaptar fácilmente según las necesidades del usuario.
  • Son útiles tanto para principiantes como para profesionales en desarrollo y administración.
Cómo hacer un menú en un script de batch

¿Cómo hacer un menú en un script de batch? Los menús en scripts batch de Windows son una herramienta potente y sencilla para automatizar tareas, mejorar la eficiencia y facilitar el uso repetitivo de comandos. Con un menú bien diseñado, cualquier usuario puede ejecutar acciones con solo pulsar un número o una letra, eliminando errores y acelerando procesos. Crear un menú personalizado puede sonar complicado, pero con las instrucciones adecuadas resulta accesible incluso para quienes no tienen experiencia previa en programación.

En este artículo te voy a mostrar cómo aprovechar al máximo los menús en scripts batch, tanto en entornos domésticos como profesionales. Recopilo y detallo las mejores técnicas, ejemplos prácticos y consejos que he extraído de webs especializadas y experiencias reales. Si buscas una guía completa y clara, aquí tienes todo lo que necesitas para aprender a crear, personalizar y sacar partido a los menús batch en Windows.

¿Qué es un menú en un script batch y para qué sirve?

Cómo hacer un menú en un script de batch

Un menú batch te permite presentar diversas opciones al usuario, quienes pueden elegir pulsando una tecla o escribiendo un número. Así, el script ejecuta la acción asociada automáticamente. Esta dinámica es muy útil para tareas recurrentes o ambientes con varios usuarios de diferentes perfiles.

Su uso es muy común en entornos técnicos donde es necesario compilar proyectos, hacer pruebas, borrar archivos, lanzar aplicaciones u organizar acciones rutinarias sin tener que recordar cada comando concreto. Los menús también ayudan a documentar las tareas y hacer más amigable el entorno de trabajo, reduciendo la curva de aprendizaje al integrar toda la operativa esencial en un solo archivo.

El origen de los scripts por lotes está en los tiempos del MS-DOS y las tarjetas perforadas, cuando automatizar tareas suponía un gran avance. Hoy, aunque los sistemas operativos han evolucionado mucho, los scripts batch siguen siendo útiles para orquestar acciones y mejorar la productividad.

¿Por qué merece la pena crear un menú batch?

Organizar tus scripts por lotes con un menú ofrece muchas ventajas, tanto para usuarios individuales como para equipos de desarrollo. Según la experiencia de profesionales y los recursos más valorados:

  • Agiliza tareas repetitivas: Puedes compilar, ejecutar, limpiar, probar e implementar proyectos rápidamente sin memorizar comandos.
  • Facilita el trabajo en equipo: Todos los miembros de un proyecto pueden usar el mismo menú, haciéndolo fácil de aprender y compartir.
  • No necesitas instalar nada extra: Basta con que el script esté en tu carpeta de proyecto, y funcionará en cualquier Windows.
  • Simplifica la documentación y el mantenimiento: El menú sirve como referencia clara de las operaciones más habituales y se puede versionar junto al código fuente.
Contenido exclusivo - Clic Aquí  Como Voltear La Pantalla en Windows 10

La curva de aprendizaje es mínima y, una vez creado el menú, cualquiera puede ejecutar tareas complejas de forma segura. Incluso puedes portar estos menús a sistemas Unix usando shell script, aunque aquí nos centraremos en el entorno Windows.

Elementos básicos para crear un menú en batch

Para entender cómo funciona un menú batch, primero hay que conocer los elementos fundamentales del lenguaje de scripts por lotes:

  • Etiquetas y saltos (:, goto): Las etiquetas identifican secciones del código. El comando goto permite saltar entre secciones según la opción elegida por el usuario.
  • Entrada de usuario (set /p): Permite recoger lo que escribe el usuario y almacenarlo en una variable.
  • Condicionales (if): Evalúan las opciones que introduce el usuario para ejecutar las acciones acordes.
  • Comandos de sistema: Desde cambiar directorios, crear carpetas, limpiar pantalla (cls), hasta ejecutar aplicaciones o scripts adicionales.

Con estos ingredientes, puedes crear desde menús sencillos hasta verdaderos paneles de control para cualquier tarea.

Ejemplo básico de menú en batch: paso a paso

Script batch respaldo Windows

Veamos un ejemplo sencillo de menú para comenzar, ideal para entender la lógica y cómo adaptarlo según tus necesidades. El siguiente fragmento muestra cómo crear un menú con tres opciones: mostrar un acertijo, crear un directorio y salir.

@echo off
title Menu de opciones
:menu
echo Elija una de las siguientes opciones:
echo.
echo 1) Acertijo
echo 2) Crear directorio
echo 3) Salir
echo.
set /p opcion=
if %opcion%==1 goto acertijo
if %opcion%==2 goto carpetanueva
if %opcion%==3 goto salir

:acertijo
echo ¿Qué es lo que es algo y a la vez nada?
pause
goto menu

:carpetanueva
echo Creando carpeta nueva...
mkdir acertijo
pause
cls
goto menu

:salir
echo Cerrando programa...
pause

Este menú utiliza etiquetas para organizar las opciones y el comando goto para saltar entre ellas. Cada vez que el usuario toma una decisión, el script reacciona de forma inmediata y le permite volver al menú inicial o salir del programa. Si quieres profundizar te enseñamos en esta guía a cómo escribir scripts batch para automatizar tareas en Windows.

Contenido exclusivo - Clic Aquí  Como Compilar en C++

Cómo estructurar menús avanzados en batch

Script batch respaldo Windows

Cuando las necesidades crecen, un menú sencillo puede quedarse corto. Por eso, muchos proyectos profesionales emplean menús batch que integran docenas de opciones, incluso submenús y ejecución de comandos externos como Maven, navegadores web o herramientas propias del entorno de desarrollo.

Por ejemplo, un menú batch para desarrolladores puede lanzar compilaciones, ejecutar pruebas unitarias, limpiar repositorios locales, abrir navegadores en direcciones predefinidas o lanzar servidores de aplicaciones, todo gestionado desde un archivo batch versionado junto al código fuente.

Estos archivos suelen incluir bucles para mostrar el menú una y otra vez, variables para guardar la selección del usuario y comprobaciones para evitar errores por entradas incorrectas. La flexibilidad es tal que puedes replicar casi cualquier interfaz de comandos habitual.

Un ejemplo real: menú batch para automatizar tareas de proyecto

Un caso muy valorado en entornos de desarrollo profesional es el siguiente menú, que organiza las tareas más habituales dentro de proyectos controlados por versiones y herramientas como Maven. El menú permite compilar, limpiar, ejecutar y lanzar aplicaciones web, abriendo el navegador automáticamente cuando es necesario:

@echo off
echo ########################################################
echo .
echo . menu.bat Menú para ejecución sencilla de tareas
echo .
echo ########################################################
rem ########################################################
rem Subcommands execution
IF NOT "%1"=="" GOTO subcomandos
rem ########################################################
:menu_start
echo .
echo . -------------------------------------------
echo . Selecciona una opción:
echo . -------------------------------------------
set OPTION=1
SET CHOICE=:menu
SET CHOICES=
set LABEL=compilarLimpi
set TEXT=Compilar y limpiar proyectos
set KEY=0
if "%CHOICE%"=="" echo . %KEY%. %TEXT%
if "%OPTION%"=="%CHOICE%" start %CD%\menu.bat %LABEL%
set CHOICES=%CHOICES%%KEY%
set /a "OPTION+=1"
REM ---- Añade aquí más opciones según tus necesidades ----
echo .
choice /C %CHOICES%
set CHOICE=%errorlevel%
set OPTION=1
goto menu_start

:subcomandos
goto %1
:compilarLimpi
call mvn clean install
goto end
:end
pause
exit

Este tipo de menú batch es altamente modificable: solo debes copiar el bloque de opción, cambiar los comandos a ejecutar y adaptar las variables según el proyecto. Puedes añadir tantas opciones como quieras, e incluso submenús si tu proyecto crece.

Personalización del menú y manejo de colores en batch

Una de las ventajas de los menús batch es que puedes personalizarlos visualmente. Utilizando el comando color, puedes dar diferentes estilos a cada opción. El código hexadecimal de colores en batch permite una gran variedad, donde el primer dígito marca el color de fondo y el segundo el color del texto. Veamos algunos ejemplos:

  • 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
Contenido exclusivo - Clic Aquí  Como Echar El Paro

Así puedes resaltar opciones, mostrar mensajes de error o indicar el resultado de cada acción con diferentes colores, mejorando la experiencia del usuario.

Instrucciones para crear y guardar tu menú batch

Crear y guardar un menú batch es sencillo. Solo necesitas seguir algunos pasos básicos:

  • Elige tu editor de texto favorito. Notepad o Notepad++ cumplen de sobra.
  • Copia y pega el código base del menú, adaptando las opciones y las acciones a lo que necesites.
  • Guarda el archivo con extensión .bat o .cmd. Por ejemplo: menu.bat.
  • Haz doble clic en el archivo y prueba el menú. Podrás ver cómo responde a las selecciones.

Recuerda: puedes añadir tantos comandos y funciones como quieras, desde ejecutar otros scripts o utilidades, hasta lanzar programas o abrir archivos automáticamente. Reducir el tamaño de imágenes también puede ser útil si quieres optimizar el entorno visual de tus scripts.

Buenas prácticas y consejos extra para menús batch robustos

Para aprovechar al máximo tus menús batch, conviene tener en cuenta algunos consejos y trucos que aumentarán su utilidad y robustez:

  • Valida siempre la entrada del usuario: Si alguien escribe una opción fuera de rango, muestra un mensaje de error y vuelve a pedir la selección.
  • Utiliza variables de entorno para guardar rutas, configuraciones o parámetros que cambian entre proyectos.
  • Versiona tu menú junto al código fuente en proyectos de equipo para que todos trabajen de la misma forma.
  • Documenta las opciones con comentarios claros dentro del propio script.
  • Prepara submenús: Si tu menú tiene muchas opciones, puedes crear categorías y submenús para no saturar la pantalla inicial.
  • Hazlo multiplataforma si lo necesitas: Puedes portar la lógica a una shell de Linux o Unix con ligeros cambios de sintaxis.

Con estos trucos, tu menú batch será mucho más eficiente, fácil de usar y adaptable a nuevas necesidades.

Este tipo de solución eficaz y flexible para automatizar tareas en Windows permite desde lo más básico hasta entornos de desarrollo complejos. Aprovecha la sencillez del código, la facilidad de personalización y la capacidad de agrupar cualquier comando que usas en tu día a día. Así, ganarás en productividad y reducirás los posibles errores, todo a golpe de un solo archivo. Esperamos que ya sepas cómo hacer un menú en un script de batch.

Deja un comentario