Cómo evitar que la consola de comandos se cierre inmediatamente después de un comando
Si Command Prompt se abre, ejecuta un comando y se cierra inmediatamente, probablemente el comando se inició desde Ejecutar, un acceso directo, un script o un archivo por lotes que termina automáticamente. La solución más sencilla es abrir primero cmd.exe y ejecutar el comando dentro de la ventana que ya está abierta.
cmd, pulsa Enter y después ejecuta el comando en la ventana de la consola. Normalmente, la ventana permanecerá abierta cuando el comando termine.
Abrir CMD primero
Inicia Command Prompt manualmente y luego pega o escribe el comando. Así podrás leer errores y resultados.
RecomendadoUsar cmd /k
El modificador /k ejecuta un comando y mantiene la ventana abierta después de finalizar.
Añadir pause
El comando pause espera una pulsación de tecla para que puedas leer el último mensaje antes de cerrar.
Por qué CMD se cierra después de ejecutar un comando en Windows 10 y Windows 11
Este comportamiento suele ser normal. Una ventana de consola se cierra cuando termina el proceso que la abrió. Por ejemplo, si haces doble clic en un archivo .bat o ejecutas un comando desde el cuadro Ejecutar, Windows puede crear una ventana de consola temporal solo para ese comando. Cuando el comando termina, la ventana temporal se cierra.
| Situación | Por qué se cierra | Mejor solución |
|---|---|---|
| Ejecutas un comando desde Ejecutar | Windows inicia un proceso temporal de cmd.exe |
Abre CMD primero o usa cmd /k |
Haces doble clic en un archivo .bat o .cmd |
El script termina y la ventana de consola se cierra | Añade pause al final mientras pruebas |
| Un acceso directo inicia un comando | El destino del acceso directo puede usar /c |
Cambia /c por /k |
| Un script falla inmediatamente | Puede haber un error de sintaxis, un archivo ausente o un problema de permisos | Ejecútalo desde una terminal abierta y lee el error |
Abre primero la consola de comandos y luego ejecuta el comando
Este es el método de diagnóstico más seguro porque la ventana permanece abierta y puedes ver toda la salida.
- Pulsa Win+R.
- Escribe
cmdy pulsa Enter. - Ejecuta el comando dentro de la ventana de Command Prompt que ya está abierta.
- Lee la salida, el mensaje de error o el estado de salida antes de cerrar la ventana manualmente.
Para comandos que requieren derechos de administrador, abre Inicio, escribe Command Prompt, elige Ejecutar como administrador y luego ejecuta el comando.
Usa cmd /k para mantener abierta la ventana de la consola de comandos
El comando cmd admite modificadores que controlan lo que ocurre después de ejecutar un comando. Los dos modificadores más comunes son /c y /k.
Usa /k cuando quieras mantener CMD abierto
- Ejecuta el comando.
- Deja abierta la ventana de consola.
- Permite leer la salida y seguir escribiendo.
Usa /c cuando quieras que CMD se cierre
- Ejecuta el comando.
- Cierra la consola cuando el comando termina.
- Es útil para automatización, pero malo para leer errores.
Ejemplo: esto abre Command Prompt, ejecuta ipconfig y mantiene la ventana abierta:
Comandocmd /k ipconfig
Ejemplo: esto ejecuta un comando y cierra la ventana cuando termina:
Comandocmd /c ipconfig
cmd /c. Sustituirlo por cmd /k suele ser suficiente durante el diagnóstico.
Cómo corregir un archivo BAT o CMD que se cierra inmediatamente después de ejecutarse
Si un archivo .bat o .cmd se cierra inmediatamente, añade pause al final mientras pruebas. Esto hace que el script espere hasta que pulses una tecla.
Ejemplo de archivo por lotes@echo off
ipconfig /all
pause
Si el script tiene varias ramas, añade pause antes de cada posible línea exit o antes de una sección donde sospeches que el script falla.
Ejemplo de depuración@echo off
echo Starting script...
net use
if errorlevel 1 (
echo The command failed.
pause
exit /b 1
)
echo Done.
pause
Ejecutar el archivo por lotes desde una ventana CMD existente
Otro buen método es abrir Command Prompt, ir a la carpeta donde está el archivo por lotes y ejecutarlo manualmente.
Comandocd /d "C:\Path\To\Folder"
my-script.bat
Cuando se inicia de esta forma, el script puede terminar, pero la ventana principal de cmd.exe normalmente permanece abierta.
Revisa los destinos de accesos directos que hacen que la consola se cierre
Si CMD se cierra después de abrir un acceso directo del escritorio, es posible que el destino del acceso directo esté configurado para cerrar la consola cuando el comando finaliza.
- Haz clic derecho en el acceso directo y selecciona Propiedades.
- Abre la pestaña Acceso directo.
- Revisa el campo Destino.
- Si contiene
cmd /c, cámbialo acmd /kmientras pruebas. - Haz clic en Aplicar y vuelve a ejecutar el acceso directo.
Por ejemplo, cambia esta versión que se cierra:
Destino de acceso directo que se cierraC:\Windows\System32\cmd.exe /c ipconfig
Por esta versión que permanece abierta:
Destino de acceso directo que permanece abiertoC:\Windows\System32\cmd.exe /k ipconfig
PowerShell, Python y comandos de instaladores también pueden cerrarse demasiado rápido
El mismo problema puede ocurrir con PowerShell, Windows Terminal, Python, instaladores y utilidades de línea de comandos. Si haces doble clic en un archivo de script, Windows puede abrir una consola solo para ese script y cerrarla cuando el proceso termine.
Ejecutar desde una ventana de PowerShell abierta
Abre primero PowerShell y luego ejecuta el script para que el error siga visible.
Bueno para .ps1Ejecutar desde CMD o Terminal
Abre Command Prompt, ve a la carpeta del script y ejecuta python script.py.
Usar opciones de registro si están disponibles
Algunos instaladores escriben registros aunque la consola se cierre. Consulta la documentación del instalador o las carpetas temporales.
Para herramientas de instalaciónEn scripts de PowerShell, también puedes añadir temporalmente una solicitud de lectura al final durante la depuración:
Línea de depuración de PowerShellRead-Host "Press Enter to exit"
Cómo encontrar el error antes de que desaparezca la ventana CMD
Si la ventana se cierra antes de que puedas leer el texto, el objetivo es capturar la salida. Puedes mantener la ventana abierta, redirigir la salida a un archivo o revisar los registros del sistema según el comando.
Redirigir la salida del comando a un archivo de texto
Esto guarda tanto la salida normal como la salida de error en un archivo del escritorio:
Comandoyour-command-here > "%USERPROFILE%\Desktop\cmd-output.txt" 2>&1
Sustituye your-command-here por el comando real. Después abre cmd-output.txt en el escritorio y lee el resultado.
Mostrar cada comando en un archivo por lotes
Si tu archivo por lotes empieza con @echo off, elimínalo temporalmente o cámbialo por echo on. Esto ayuda a ver qué línea se ejecuta antes de que el script termine.
Modo de depuración por lotesecho on
rem Your commands go here
pause
Revisar errores comunes
- La ruta del comando es incorrecta o el archivo ya no existe.
- El comando necesita derechos de administrador.
- El script usa
exitdemasiado pronto. - El acceso directo usa
/cen lugar de/k. - Una herramienta requerida no está instalada o no está en la variable de entorno
PATH. - Faltan comillas alrededor de una ruta con espacios.
Cuando CMD se abre y se cierra solo: revisa tareas de inicio y malware
Si Command Prompt se abre y se cierra solo sin que ejecutes nada, trátalo de otra forma. Puede ser una tarea programada, una entrada de inicio, una utilidad de controlador, un actualizador de software o software no deseado.
- Abre Administrador de tareas y revisa la lista de Aplicaciones de inicio.
- Abre Programador de tareas y revisa tareas añadidas recientemente o sospechosas.
- Ejecuta un análisis completo con Seguridad de Windows.
- Comprueba si una aplicación específica abre CMD durante actualizaciones o mantenimiento.
- Si la ventana aparece repetidamente, usa Monitor de confiabilidad o Visor de eventos para buscar errores relacionados en el mismo momento.
La consola de comandos se cierra después de ejecutar un comando: preguntas frecuentes
P ¿Por qué la consola de comandos se cierra cuando hago doble clic en un archivo BAT? ⌄
pause al final mientras pruebas o ejecuta el archivo por lotes desde una ventana de Command Prompt ya abierta.
P ¿Cuál es la diferencia entre cmd /c y cmd /k? ⌄
cmd /c ejecuta un comando y luego se cierra. cmd /k ejecuta un comando y mantiene la consola abierta. Usa /k cuando necesites leer el resultado.
P ¿Es un virus si CMD se abre y se cierra rápidamente? ⌄
cmd.exe. Sin embargo, si ocurre repetidamente, al iniciar Windows o junto con redirecciones del navegador, herramientas de seguridad bloqueadas o procesos desconocidos, ejecuta un análisis de seguridad e inspecciona las tareas de inicio.
P ¿Cómo mantengo abierta la ventana de un script de Python en Windows? ⌄
python script.py. También puedes añadir temporalmente una línea de entrada en el script mientras depuras, pero normalmente es más limpio ejecutarlo desde una terminal abierta.
P ¿Debo añadir pause a todos los archivos por lotes? ⌄
pause mientras pruebas o cuando el archivo esté pensado para uso manual. Quítalo para automatización desatendida, tareas programadas, scripts de inicio de sesión y scripts de despliegue donde esperar una tecla rompería el flujo de trabajo.
La mejor solución cuando la consola de comandos se cierra demasiado rápido
En la mayoría de los casos, la solución es sencilla: abre primero Command Prompt y ejecuta el comando dentro de esa ventana. Si estás editando un acceso directo, usa cmd /k en lugar de cmd /c. Si estás depurando un archivo por lotes, añade pause cerca del final o antes de la línea donde el script sale.
🎯 Guía rápida de decisión
Necesitas leer la salida: abre primero cmd.exe y ejecuta el comando manualmente.
El acceso directo se cierra demasiado rápido: sustituye cmd /c por cmd /k.
El archivo por lotes se cierra al instante: añade pause mientras pruebas.
La ventana aparece sola: revisa aplicaciones de inicio, tareas programadas y resultados del análisis de seguridad.
La clave es separar el comportamiento normal de la consola de los errores reales. Una vez que la ventana permanece abierta, el mensaje de error suele indicar exactamente qué hay que corregir.