Lección 8 / 20

Escribir tu propia función

En esta lección agruparás un trozo de lógica bajo un nombre para poder reutilizarlo.

Una función se declara como nombre() { ... } y se llama escribiendo su nombre, sin paréntesis y sin comas: greet "Carlos". Dentro, los argumentos llegan como $1, $2..., igual que en el guion principal.

El código de ejemplo define una función que saluda y la llama con un nombre.

Eso de llamarla como si fuera un comando es lo que más descoloca al venir de otros lenguajes. Tiene su lógica: en shell, una función es indistinguible de un comando externo desde el punto de vista de quien la usa, y por eso se invoca igual.

Un punto importante: las variables de una función son globales por defecto. Si dentro asignas count=0, estás pisando cualquier count de fuera. Para evitarlo se declara local count=0, y conviene hacerlo siempre; es la causa de errores especialmente difíciles de encontrar en guiones largos.

📖 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).

🔗 El mismo tema en otros lenguajes

Mira cómo se escribe lo mismo en otro lenguaje.

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