Imaginamos que en la realización de nuestro shell-script utilizamos un pequeño programa que hemos hecho en C (por ejemplo) y, además de su salida por pantalla, debemos tener también otro valor de retorno (ya sea un código de error, un número de veces que se ha realizado una acción, etc). Es decir, nuestro int main() { return X; }.
Para ello tenemos este programa:
1 2 3 4 | int main() { return 4; } |
Lo llamamos test.c y lo compilamos:
$ gcc -o test test.c
y justo después de ejecutar el programa, debemos leer el valor de $?, lo suyo es almacenarlo en una variable, ya que cuando llamemos a otro programa, se almacenará el valor de retorno del nuevo programa:
$ ./test
$ val=$?
$ if (( $val == 2 )); then echo «DOS»; else if (( $val == 4 )); then echo «CUATRO»; fi; fi
Foto: Lel4nd (Flickr)
Pingback: Bitacoras.com /
Pingback: Píldora: Cómo buscar un texto dentro de documentos múltiples ODT de Libreoffice/Openoffice o docx de Microsoft Word – Poesía Binaria /