Lección 19 / 20

Valores devueltos por funciones y códigos de salida

En esta lección harás que una función comunique si algo se cumple o no.

return 0 significa éxito y return 1 fallo. La variable especial $? contiene el estado de salida del último comando ejecutado, así que se consulta justo después de llamar a la función.

El código de ejemplo comprueba si un número es par.

Aquí hay algo que confunde mucho: return no devuelve un valor, devuelve un estado. Solo admite números de 0 a 255, y 0 significa «verdadero». No sirve para sacar un resultado de la función. Para eso se usa echo dentro de la función y se captura desde fuera con resultado=$(mi_funcion).

En código idiomático ni siquiera se suele mirar $?: como la función ya devuelve un estado, se escribe directamente if is_even 4; then ... fi, que se lee mejor y evita el riesgo de que otro comando pise el valor de $? antes de consultarlo.

📖 Código de referencia
✍️ Tu código
Escribe tu código y pulsa «Ejecutar»

🧪 Este sitio no puede compilar ni ejecutar Shell Script directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).

Espacio publicitario (banner)
Espacio publicitario (en el artículo)