La Sentencia exit - AWK

La sentencia exit hace que awk detenga la ejecución de la regla actual inmediatamente y detenga el procesamiento de la entrada, cualquier registro que falte es ignorado.

Si una sentencia exit se ejecuta en una regla BEGIN el programa detiene el procesamiento de todo inmediatamente. No se leería ningún registro de entrada. Sin embargo, si existe una regla END, ésta es ejecutada.

Si se usa exit como parte de una regla END, hace que el programa se detenga inmediatamente.

Una sentencia exit como parte de una regla ordinaria (esto es, no forme parte de una regla BEGIN y END) detiene la ejecución de cualquier regla automática posterior, pero la regla END sí es ejecutada si existe. Si no quieres que la regla END realice su trabajo en estos casos, puedes fijar una variable a distinto de cero antes de la sentencia exit, y chequear dicha variable en la regla END.

Si se le suministra un argumento a exit, su valor se usa como el código de estado de salida para el proceso awk. Si no se le suministra argumento, exit devuelve el estado 0 (éxito). Por ejemplo, digamos que has descubierto una condición de error que no sabes como manejar realmente. Convencionalmente, el programa te reporta esto saliéndose con un estado distinto de cero. Tu programa awk puede hacer esto usando una sentencia exit con un argumento distinto de cero. Aquí tienes un ejemplo de esto:

BEGIN {
if (("date" | getline date_now) < 0) {
print "Can't get system date" > "/dev/stderr" exit 4
}
}














Publicar un comentario

0 Comentarios