Funciones
Aunque los scripts en Bash suelen ser pequeños y para hacer cosas puntuales pero muchas veces viene bien tener funciones para evitar repetir código y hacer buenos scripts. Se pueden definir de la siguientes formas (independientemente de si se van a pasar o no parámetros.
Para invocar a una función simplemente se ha de usar su nombre (sin los paréntesis) y en caso de que queramos pasar parámetros uno detrás de otro separados por espacios.
#!/bin/bash fun () { if [ "$1" ] # Is parameter #1 zero length? then echo "Parametro #1 es \"$1\".-" fi return 0 } echo "sin parametros." fun echo echo "1 parametro." fun uno echoDentro de la definición de la función podemos usar los siguientes comandos:
Las variables por defecto son globales por lo que si queremos que una variable sea local tenemos que definirla como local dentro de la función:
func () { var1=2 # cambia el valor de una variable globalmente local var2=23 # define una variable local }