in

c – 1 = falso y 0 = verdadero?

apple touch icon@2

Este mundo al revés es común con las devoluciones de errores de proceso. La variable de shell $? informa el valor de retorno del programa anterior para ejecutar desde el shell, por lo que es fácil saber si un programa tiene éxito o falla:

$ false ; echo $?
1
$ true ; echo $?
0

Esto se eligió porque hay un solo caso en el que un programa tiene éxito, pero puede haber docenas de razones por las que un programa falla: al permitir que haya muchos códigos de error de falla diferentes, un programa puede determinar por qué otro programa falló sin tener que analizar la salida.

Un ejemplo concreto es el aa-status programa suministrado con el AppArmor control de acceso obligatorio herramienta:

   Upon exiting, aa-status will set its return value to the
   following values:

   0   if apparmor is enabled and policy is loaded.

   1   if apparmor is not enabled/loaded.

   2   if apparmor is enabled but no policy is loaded.

   3   if the apparmor control files aren't available under
       /sys/kernel/security/.

   4   if the user running the script doesn't have enough
       privileges to read the apparmor control files.

(Estoy seguro de que hay programas más difundidos con este comportamiento, pero conozco bien este. 🙂

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

angularjs concepts

AngularJS – Descripción general

gfg 200x200 min

Sincronizado en Java – GeeksforGeeks