Me gustaría escribir una función a la que pueda llamar desde un script con muchas variables diferentes. Por algunas razones, tengo muchos problemas para hacer esto. Los ejemplos que he leído siempre usan una variable global, pero eso no haría que mi código fuera mucho más legible por lo que puedo ver.
Ejemplo de uso previsto:
#!/bin/bash
#myscript.sh
var1=$1
var2=$2
var3=$3
var4=$4
add(){
result=$para1 + $para2
}
add $var1 $var2
add $var3 $var4
# end of the script
./myscript.sh 1 2 3 4
Intenté usar $1
y tal en la función, pero luego solo toma el global desde el que se llamó todo el script. Básicamente, lo que estoy buscando es algo así $1
, $2
etc., pero en el contexto local de una función. Como sabes, las funciones funcionan en cualquier lenguaje apropiado.
result =
con result=$(($1 + $2))
y agregue echo $result
después y funciona correctamente, $ 1 y $ 2 son sus argumentos de funciones.
echo $1
yecho $2
en ello.