Cuando tus scripts crecen, repetir el mismo bloque de código en varios sitios es un problema. Si necesitas cambiar algo, tienes que cambiarlo en todos los sitios. Las funciones resuelven esto: defines el código una vez y lo llamas cuantas veces quieras.
La sintaxis es: nombre de la función, paréntesis vacíos, y el cuerpo entre llaves { }. Los paréntesis siempre van vacíos — los argumentos se pasan de otra forma.
Una vez definida, la llamas por su nombre:
Cada llamada ejecuta el código de la función. Es como tener un comando personalizado.
Dentro de una función, los argumentos funcionan igual que en los scripts:
$1 — primer argumento de la función$2 — segundo argumento$@ — todos los argumentos$# — número de argumentosPor defecto, las variables en shell son globales — visibles en todo el script. Para que una variable solo exista dentro de una función, usa local:
Sin local, la variable resultado seguiría existiendo después de llamar a la función. Con local, solo existe dentro de ella.
crear_backup es mejor que func1Un script que organiza archivos por tipo:
Funciones pequeñas, reutilizables, con nombres claros.
Crea un script funciones.sh con:
saludar que reciba un nombre y lo salude con echo "Hola, [nombre]!"Escríbelo en el editor y ejecútalo con sh funciones.sh.