Básicamente, supongamos que tengo un archivo por lotes que llama a myapp1.exe y sale de myapp1.exe con el código de salida 1. ¿Puede el archivo por lotes capturar esta información y forzar al archivo por lotes a salir con el mismo código de salida o realizar alguna otra lógica?¿Puede un archivo por lotes capturar los códigos de salida de los comandos que invoca?
Respuesta
@echo off
rem ...
set errorlevel=
MyApp1.exe
exit /b %errorlevel%
sería la variante explícita.
Puede intentar con errorlevel
s. Algunos más información here.
hacer, o no lo hacen. Aquí no hay intentos". (Y en este caso, si usa el nivel de error, funcionará;) – ewall
La respuesta aceptada es correcta, pero si usa call
para llamar a otra secuencia de comandos por lotes, y la segunda secuencia de comandos por lotes está utilizando SetLocal
, puede necesitar usar un truco de análisis para lograr esto. Si está ejecutando en esto, agregue el código siguiente antes de su exit b
:
ENDLOCAL&set myvariable=%myvariable%
Ahora el valor de myvariable
se pone a disposición el contexto de llamada y se puede ver el valor en el otro guión.
Referencias:
https://stackoverflow.com/a/16167938/89590
http://www.borngeek.com/2008/05/22/exiting-batch-file-contexts/
% errorlevel% almacena el valor de retorno del último comando ejecutado
call program.exe
echo program.exe returns "%ERRORLEVEL%"
IF %ERRORLEVEL% NEQ 0 (
echo FAILED
)
Esto ya está establecido por la respuesta aceptada de hace años, me parece. –
- 1. Honrar códigos de salida de archivos por lotes invocados por msbuild
- 2. R Modo por lotes - Suprime el archivo de salida
- 3. Cygwin ejecutando secuencia de comandos de un archivo por lotes?
- 4. ¿Cómo se ejecutan los comandos de powershell desde un archivo por lotes?
- 5. Incluir un archivo por lotes en un archivo por lotes
- 6. Codificación de archivo por lotes
- 7. ¿Cuáles son todos los códigos cortos para los comandos svn?
- 8. Agregar (recopilar) los códigos de salida en bash
- 9. ¿Están realmente rotos los códigos de salida de Java?
- 10. Esperar a que finalicen los comandos
- 11. ¿Cómo comprobar si un archivo/dir se puede escribir en secuencias de comandos por lotes
- 12. Cómo capturar los argumentos de línea de comandos de CMake?
- 13. creando un archivo por lotes para que los programas comiencen a usar un retraso
- 14. por lotes, incluyendo los subdirectorios
- 15. Cómo ocultar la salida por lotes
- 16. Script por lotes "Droplet": nombres de archivo que contienen símbolos
- 17. ¿Puede redis canalizar múltiples comandos que dependen de los anteriores?
- 18. Limitar la salida de todos los comandos de Linux
- 19. ¿Puede recomendar un sitio web para los códigos fuente vhdl?
- 20. ¿Cuánto demora ejecutar un archivo por lotes?
- 21. Archivo de proceso por lotes de Windows - Concatene todos los archivos en los subdirectorios
- 22. Anexión de salida de un archivo por lotes Para registrar el archivo
- 23. ¿Cómo escribo un script por lotes que copia un directorio a otro, reemplaza los archivos viejos?
- 24. C# ¿cómo se puede obtener la salida de otro archivo por lotes?
- 25. Control de psftp en un archivo por lotes de Windows
- 26. Cómo recorrer los archivos que coinciden con el comodín en el archivo de proceso por lotes
- 27. ¿Cómo buscar el significado de los códigos de salida para las utilidades de línea de comandos de Linux?
- 28. ¿Es posible redirigir la salida de un archivo por lotes dentro del script?
- 29. Ejecución de hormigas a partir de un archivo por lotes: comandos posteriores no correr
- 30. archivo de proceso por lotes de otros parámetros que pasan
thnx, hasta que powershell pueda devolver códigos de salida negativos Estoy obligado a continuar envolviendo mis scripts de powershell con scripts por lotes ~ – MDMoore313
Parece que al menos PowerShell v3 puede devolver códigos de salida negativos: 'powershell 'exit -5'; $ LASTEXITCODE' produce '-5' para mí. – Joey