exit - Salir del programa

Mantenido el

¿Qué es el comando exit?

El comando exit es un comando que puede cerrar archivos por lotes o el símbolo del sistema.

En esta página, explicamos de manera clara desde el uso básico del comando exit hasta la configuración de opciones.

Cómo usar el comando exit

El uso básico del comando exit es el siguiente.

exit [/b] <código_de_salida>
OpciónDescripción
/bTermina el procesamiento del archivo por lotes donde se ejecutó el comando exit.
<código_de_salida>Especifica el código de salida. Si no se especifica, o si se especifica algo que no sea un número, se tratará como 0.

Se puede usar sin especificar opciones, en cuyo caso el comando exit no hará nada y terminará.

×
Ícono de la consola de comandos
Consola de comandos
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2024 Ribbit App Development All rights reserved.
 
C:\users\user>exit

Al ejecutar el comando anterior, se cerrará el símbolo del sistema abierto.

Además, si no se especifican opciones, incluso si es un comando dentro de un archivo por lotes llamado por el comando call o start, el símbolo del sistema se cerrará.

caller.cmd
@echo off
setlocal

call callee.cmd

_rem Las siguientes líneas no se ejecutarán_
pause

endlocal
callee.cmd
@echo off
setlocal

exit

endlocal

Prepare los dos archivos anteriores y ejecute el siguiente comando.

×
Ícono de la consola de comandos
Consola de comandos
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2024 Ribbit App Development All rights reserved.
 
C:\users\user>caller.cmd

Cuando se ejecute el código anterior, el símbolo del sistema se cerrará inmediatamente.

Dado que se ejecuta el comando exit sin opciones en callee.cmd, el comando pause en caller.cmd no se ejecutará.

Opción /b

Si se especifica la opción /b, termina el procesamiento del archivo por lotes donde se ejecutó el comando exit.

En el ejemplo anterior de caller.cmd y callee.cmd, cuando se ejecutó el comando exit en el archivo llamado callee.cmd, también se terminó caller.cmd.

Al especificar la opción /b, puede terminar solo el procesamiento del archivo por lotes llamado sin terminar el procesamiento del archivo por lotes que lo llamó.

Reescriba caller.cmd y callee.cmd de la siguiente manera.

caller.cmd
@echo off
setlocal

call callee.cmd

_rem Las siguientes líneas se ejecutarán_
pause

endlocal
callee.cmd
@echo off
setlocal

exit /b

endlocal

Prepare los dos archivos anteriores y ejecute el siguiente comando.

×
Ícono de la consola de comandos
Consola de comandos
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2024 Ribbit App Development All rights reserved.
 
C:\users\user>caller.cmd

Cuando se ejecute el comando anterior, se ejecutará el comando pause.

×
Ícono de la consola de comandos
Consola de comandos
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2024 Ribbit App Development All rights reserved.
 
C:\users\user>
caller.cmd
Presione cualquier tecla para continuar …

Especificación del código de salida

En <código_de_salida>, especifique el código de salida.

Solo se puede especificar un número, y si se especifica algo que no sea un número, no se producirá un error, pero se tratará como 0.

El código de salida especificado se almacena en %errorlevel%.

Usando %errorlevel%, puede obtener el código de salida del comando ejecutado inmediatamente antes.

Reescriba caller.cmd y callee.cmd de la siguiente manera.

caller.cmd
@echo off
setlocal

call callee.cmd

echo Se ha especificado el código de salida %errorlevel%

pause

endlocal
callee.cmd
@echo off
setlocal

exit /b 100

endlocal

Prepare los dos archivos anteriores y ejecute el siguiente comando.

×
Ícono de la consola de comandos
Consola de comandos
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2024 Ribbit App Development All rights reserved.
 
C:\users\user>caller.cmd

Cuando se ejecute el comando anterior, se mostrará la siguiente salida.

×
Ícono de la consola de comandos
Consola de comandos
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2024 Ribbit App Development All rights reserved.
 
C:\users\user>
caller.cmd
Se ha especificado el código de salida 100
Presione cualquier tecla para continuar …

Comandos relacionados con el comando exit

Ejercicios

Problema de práctica

¿Cuál es el propósito del comando “exit” en el símbolo del sistema?

回答がサーバーに送信されることはありません
Problema de práctica

¿Cuál de las siguientes opciones establece correctamente el código de salida especificado?

回答がサーバーに送信されることはありません
Problema de práctica

Se preparan dos archivos por lotes llamados caller.cmd y callee.cmd, y caller.cmd llama a callee.cmd. ¿Qué hará caller.cmd si se ejecuta el siguiente comando en callee.cmd?

exit
回答がサーバーに送信されることはありません
#Símbolo del sistema #Archivos por lotes #Argumentos #Línea de comandos #Comando