Linux.Shell.Funciones.

Ismael Royano Gómez
Enredando con Linux.
2 min readMay 13, 2019

Las funciones funcionan exactamente igual que los script, la diferencia está en que lo puedes llamar desde cualquier lugar, ya que se cargan directamente en el entorno del intérpretes de comandos. Son muy similares a las subrutinas, procedimientos y funciones en otros lenguajes de programación. Su sintáxis básica es la siguiente;

function nombre_funcion() { 
lista de comandos
}

Vamos con un ejemplo muy básico para ver como funciona.

#!/bin/bash# Creamos la función.
function hola() {
echo "Hola Ismael, este es mi primer ejercicio de funciones"
}

A la hora de llamar al procediendo

#Llamamos al procedimiento con el nombre de la función
hola

Las funciones son muy eficientes a la hora de trabajar, ya que podemos usarlas en cualquier momento, en cualquier lugar, la única pega que tiene es que se deben cargar en memoria todas las funciones para usar esa ventaja. Aunque en la actualidad con la cantidad de memoria que usan los ordenadores, no debería preocuparnos, pero bueno, por eficacia y eficiencia no deberíamos malgastar memoria aunque sea mucha cantidad. Para ver todas las funciones que tenemos en el entorno del intérprete de comandos se ejecuta:

declare -F

Si queremos borrar una función del entorno de trabajo ejecutamos lo siguiente:

unset -f nombre_funcion

Para definir una función sólo basta escribirla directamente en la consola o mediante un script, de forma que cuando se ejecute se carga en memoria.

Las funciones también pueden devolver valores con la instrucción “return”, veamos un ejemplo:

#!/bin/bash

# Definimos la función
function hola () {
echo "Hola $1"
return 25
}

# Llamo a la función y le pongo un parámetro, mi nombre.
Hola Ismael

# Guardo el valor del comando ejecutado, que en este caso es return.
devuelto=$?

echo "El valor del return es is $devuelto?"

--

--

Ismael Royano Gómez
Enredando con Linux.

Técnico Informático curioso, lector activo de las nuevas tecnologías, amante de las series de televisión y usuario del respetable mundo del enredo.