leq - accediendo a ERRORLEVEL desde script bash
if cmd (1)
Tengo una aplicación que solo funciona correctamente cuando se la llama desde un símbolo del sistema de Windows. Algo relacionado con las transmisiones de entrada / salida.
Así que puedo llamarlo desde un script bash pasándolo como un argumento a cmd.
cmd / c "badapp"
Esto funciona bien, pero ocasionalmente badapp falla con problemas de red y no recibo comentarios. ¿Hay alguna forma de verificar el ERRORLEVEl desde el script bash, o ver el resultado de badapp en el terminal ejecutando el script bash?
sí, $?
es la variable que contiene el nivel de error.
Prueba echo $?
por ejemplo.
Un ejemplo de Cygwin bash (supongo que estás usando Cygwin porque estás usando el cmd
Windows en tu ejemplo).
susam@nifty /cygdrive/c/Documents and Settings/susam/Desktop
$ cmd /c "badapp"
''badapp'' is not recognized as an internal or external command,
operable program or batch file.
susam@nifty/cygdrive/c/Documents and Settings/susam/Desktop
$ if [ $? -eq 0 ]
> then
> echo "good"
> else
> echo "bad"
> fi
bad